2011-04-28 170 views
0

我在下面的初始化中需要一点帮助。我在下面做什么错。小初始化问题

DateTimeOffset? dateTimeFrom, dateTimeTo = null; 

我得到一个错误“使用未分配的本地变量dateTimeFrom”。

也有任何其他方式来将可空的DateTime转换为可空的DateTimeOffset。

什么我目前做的是:

DateTimeOffset? dateTimeFrom, dateTimeTo = null; 
      if (ViewModel.FromDate.HasValue) 
       dateTimeFrom = new DateTimeOffset(ViewModel.FromDate.Value); 
      if (ViewModel.ToDate.HasValue) 
       dateTimeTo = new DateTimeOffset(ViewModel.ToDate.Value); 

但我认为这是一个更好的和优雅的方式做上面的步骤也。

+0

dateTimeFrom应在C#中定义它的使用之前。 – 2011-04-28 15:12:04

回答

0
DateTimeOffset? dateTimeFrom = ViewModel.FromDate.HasValue ? new DateTimeOffset(ViewModel.FromDate.Value) : null; 

DateTimeOffset? dateTimeTo = ViewModel.ToDate.HasValue ? new DateTimeOffset(ViewModel.FromDate.Value) : null; 
3

DateTimeOffset? dateTimeFrom, dateTimeTo = null;将第二个变量初始化为null,使第一个变量未初始化。

尝试

DateTimeOffset? dateTimeFrom = null, dateTimeTo = null; 

DateTimeOffset? dateTimeFrom = null; 
DateTimeOffset? dateTimeTo = null; 
4

您还没有初始化这两个变量,只有第二个。

有关更多信息,请参见here

并尝试:

DateTimeOffset? dateTimeFrom = null, dateTimeTo = null;