C#转换日期时间差与SQL Server转换日期时间
在SQL Server中:C#转换日期时间差与SQL Server转换日期时间,c#,sql-server,asp.net-mvc,C#,Sql Server,Asp.net Mvc,在SQL Server中: DECLARE @UTC BIGINT SET @UTC = 1563527339733 SELECT DATEADD(MILLISECOND, @UTC % 1000, DATEADD(SECOND, @UTC / 1000, '19700101')) SELECT CONVERT(VARCHAR(8),cast('2019-07-19 09:08:59.733' as datetime), 108) 'hh:mi:ss' 结果:09:08:59 但在C#或AS
DECLARE @UTC BIGINT
SET @UTC = 1563527339733
SELECT DATEADD(MILLISECOND, @UTC % 1000, DATEADD(SECOND, @UTC / 1000, '19700101'))
SELECT CONVERT(VARCHAR(8),cast('2019-07-19 09:08:59.733' as datetime), 108) 'hh:mi:ss'
结果:09:08:59
但在C#或ASP.Net MVC中:
DateTime dtCheck = DateTimeHelper.ConvertMilisecondToDateTimeUTC(1563527339733);
string test = dtCheck.ToString("HH:mm:ss");
C#测试结果:09:09:00
函数转换
public static DateTime ConvertMilisecondToDateTimeUTC(long milisecond)
{
var dt = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(Math.Round(milisecond / 1000d));
return dt;
}
如何将其更改为相同的?删除
ConvertMilisecondToDateTimeUTC()
函数中的Math.Round()
,将返回预期结果
public static DateTime ConvertMilisecondToDateTimeUTC(long milisecond)
{
var dt = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(milisecond / 1000d);
return dt;
}
请找到你正在寻找的
dtCheck.ToString(“HH:mm:ss”)
?@Arulkumar:我想要090859的C#,你可以看到,在C#中,它是自动循环日期时间ConvertMilisecondToDateTimeUTC
是你的自定义函数,你可以共享其中的代码。我已经添加了函数,您可以看到更多详细信息。在最新版本的框架中,DateTimeOffset
有一个内置的fromUnixtimemissions
方法,因此您的转换可以替换为DateTimeInfo.fromUnixtimemissions(…).DateTime
。