2011-04-28 172 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;