不能将带有 [] 的索引应用于类型为“日期时间”的表达式

本文关键字:日期 时间 表达式 日期时间 类型 应用于 索引 不能 | 更新日期: 2024-11-07 05:54:02

我有一个MVC应用程序,可以显示来自数据库的信息。其中一个字段是日期时间,我收到错误

"无法将带有 [] 的索引应用于类型为'日期时间'的表达式"

但我看不出它试图在哪里索引它。

我对 C# 和 MVC 比较陌生,所以我希望我犯了一个新手错误,有人可以快速告诉我我哪里出错了。

"日期时间"字段的代码为:

[DisplayName("Booking Time"), Column("bookingTime"), NotNull]
public DateTime BookingTime
{
    get { return Fields.BookingTime[this]; }
    set { Fields.BookingTime[this] = value; }
}

我能找到的唯一 [] 设置显示名称等。

不能将带有 [] 的索引应用于类型为“日期时间”的表达式

你的代码应该看起来像这样

[DisplayName("Booking Time"), Column("bookingTime"), NotNull]
public DateTime BookingTime
{
    get { return Fields.BookingTime; }
    set { Fields.BookingTime = value; }
}

Fields.BookingTime似乎是类型 DateTime 而不是 DateTime[],因此您无法按索引访问它

我认为你的索引是错误的,this关键字引用你从中调用属性的对象,可能你的代码会是这样的

[DisplayName("Booking Time"), Column("bookingTime"), NotNull]
public DateTime BookingTime
{
    get { return this.Fields.BookingTime; }
    set { this.Fields.BookingTime = value; }
}

修复了它,我在不久前做的模块中发现了对该字段是 Int64 的引用,所以忘记了它默认为 Int64

咚!