小初始化问题

时间:2011-04-28 15:09:31

标签: c#

我需要在下面的初始化中提供一点帮助。我在下面做错了什么。

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);

但我认为还有一种更好,更优雅的方式来完成上述步骤。

3 个答案:

答案 0 :(得分:4)

您尚未初始化两个变量,只是第二个变量。

有关详细信息,请参阅here

尝试:

DateTimeOffset? dateTimeFrom = null, dateTimeTo = null;

答案 1 :(得分:3)

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

尝试

DateTimeOffset? dateTimeFrom = null, dateTimeTo = null;

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

答案 2 :(得分:0)

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

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