【问题标题】:'DateTime' does not contain a definition for 'HasValue' and no accessible extension method“DateTime”不包含“HasValue”的定义,也没有可访问的扩展方法
【发布时间】:2020-04-13 23:26:51
【问题描述】:

我想知道是否有人可以建议我如何解决此编译器错误?我正在尝试从下拉日历中获取输入并将其转换为字符串。在此先感谢:)

protected void Calendar1_Selection(object sender, EventArgs e) {
        if (Calender1.SelectedDate.HasValue) {
            dateOfBirth.Text = Calender1.SelectedDate.Value.ToString("dd/MM/yyyy");
            Calander1.Visible = false;

        }

【问题讨论】:

  • Calender1的数据类型是什么?
  • 。抱歉,我是 C# 和 ASP.Net 的新手

标签: c# asp.net datetime


【解决方案1】:

这是因为 SelectedDate 的类型是 DateTime 而不是 Nullable<DateTime>

根据文档

默认值为 MinValue。

这意味着你应该像这样构造你的 if 语句

if (Calender1.SelectedDate != DateTime.MinValue)

更多详情请见:https://docs.microsoft.com/en-us/dotnet/api/system.web.ui.webcontrols.calendar.selecteddate?view=netframework-4.8

【讨论】:

    猜你喜欢
    • 2021-07-18
    • 1970-01-01
    • 1970-01-01
    • 2020-07-24
    • 1970-01-01
    • 1970-01-01
    • 2021-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多