将日期转换为毫秒

我正在使用Visual Studio 2010,MVC 3和C#。 我正在创建一些高级图表,需要让x轴成为日期。 我从数据库中提取日期并将它们添加到数组中,然后将其传递给highcharts。 我认为highcharts要求日期为毫秒格式。 何我将’12/20/2011 5:10:13 PM的日期时间转换为例如毫秒?

一旦弄清楚要从中计算的毫秒数,就可以从另一个获取一个DateTime对象来获取TimeSpan对象。 从TimeSpan,您可以获得TotalMilliseconds。

换句话说,如果start和end是DateTime对象,则可以执行以下操作:

 double milliseconds = (end - start).TotalMilliseconds; 

您可以使用DateTime.Ticks属性并将值转换为毫秒。

此属性的值表示自0001年1月1日午夜12:00:00起经过的100纳秒间隔的数量,表示DateTime.MinValue。 它不包括可归因于闰秒的刻度数。

单个刻度表示一百纳秒或一千万分之一秒。 一毫秒内有10,000个刻度。

C# DateTime.Ticks为您提供任何时间刻度值。 之后您可以转换为毫秒,如下所示:

 long dateticks = DateTime.Now.Ticks; long datemilliseconds = dateticks / TimeSpan.TicksPerMillisecond; 
 DateTime[] dates = ; var minDate = dates.Min(); var msDates = dates.Select(date => (date - minDate).TotalMilliseconds).ToArray();