.NET:将datetime转换为decimal

zzz*_*zzz 4 .net datetime decimal

在SQL Server(T-SQL)中,您可以将DateTime变量转换为小数值,如下所示:

CONVERT(DECIMAL(20,10),@mytime)
Sample Input: 2012-07-27 08:29:20.000
Sample Output: 41115.3537037037
Run Code Online (Sandbox Code Playgroud)

有没有将.NET中的DateTime(C#或VB)转换为相同类型的小数的等效方法?

我希望比较不同日子的时间.

计算

41115.3537037037 % 1 = .3537037037
Run Code Online (Sandbox Code Playgroud)

这样我就可以轻松比较不同日期的时间.

Jon*_*eet 6

看起来这是"自1900年1月1日以来的天数".在这种情况下,您将使用:

DateTime epoch = new DateTime(1900, 1, 1);
TimeSpan difference = date - epoch;
double days = difference.TotalDays;
Run Code Online (Sandbox Code Playgroud)