将datetime设置为null

时间:2011-12-05 14:20:48

标签: c# asp.net-mvc datetime date-range

我有两个DateTime变量第一个句点和第二个句点,每个句点我都有一个日期范围介于每个句点的两个日期之间。我的问题是我通常在没有加载页面的情况下将日期设置为null但是对于这些日期我不能将它们设置为null,而不是设置特定日期。

DateTime firstPeriodBeginDate = DateTime.Today.AddMonths(-3);
DateTime secondPeriodBeginDate = DateTime.Today.AddMonths(-2);

我希望它设置为null,以便它等于用户在用于呈现结果时从日期选择器中选择的值。

2 个答案:

答案 0 :(得分:19)

DateTime是一个不可为空的值类型,因此不能为null。

你可以使用Nullable<DateTime>来做这件事:

DateTime? firstPeriodBeginDate = DateTime.Today.AddMonths(-3);
DateTime? secondPeriodBeginDate = null;

答案 1 :(得分:2)

DateTime结构不能为空。

但你可以使用可以为空的DateTime

DateTime? dateTime;
dateTime = null;

并检查null

if (dateTime.HasValue)

更多信息:C# Nullable DateTime

希望这会有所帮助