2016-06-07 146 views
0

我在MVC中有一个创建方法来创建一些活动。我们有一个是活动日期的字段,它是长数据类型。DateTime.Ticks参数超出范围

我需要通过用户选择日期。

代码:

long selectedDate = Convert.ToDateTime(userSelectedDate).ToUniversalTime().Ticks 

问题:

但我通过这个API来后,我得到了参数超出范围的异常:值

请帮我解释一下如何将这个问题转换为long。

+0

您正在使用的API需要一个很长的,还是简单的int? – smoksnes

+0

@smoksnes API期待长 – Akhil

+0

如果'userSelectedDate'的格式是“MM/DD/YYYY”,那么'Convert.ToDateTime(userSelectedDate)'会给你格式异常 –

回答

1

userSelectedDate的值是多少?我怀疑你会发现它是一个无法转换成日期的值。或者它接近于允许值的边界,ToUniversalTime将其推出界限。

将这条线long selectedDate = Convert.ToDateTime(userSelectedDate).ToUniversalTime().Ticks划分为不同的步骤,以便您可以逐个检查它。

var a = Convert.ToDateTime(userSelectedDate); 
var b = a.ToUniversalTime(); 
var c = b.Ticks; 

逐行扫描您的调试器,直到找到问题值。

+0

userSelectedDate是来自datetimepicker的值。例如:“06/08/2016”,格式为MM/DD/YYYY。这个问题不在我的代码中。该错误消息是API – Akhil

+0

@Akhil的返回结果然后,如何将此值完全传递给API? –

+0

@SonerGönül我正在使用RestSharip。我将活动对象传递给AddBody方法。 – Akhil