2016-04-21 50 views
1

我有一個顯示數據庫信息的MVC應用程序。其中一個領域是一個DateTime,我得到的錯誤不能用[]將索引應用於'DateTime'類型的表達式

「無法適用與[]的索引類型爲‘日期時間’的表達」

,但我無法看到它的努力指數它。

我對C#和MVC相對比較陌生,所以我希望我犯了一個菜鳥錯誤,有人可以快速向我展示我出錯的地方。

爲DateTime字段的代碼是:

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

唯一的[]我可以找到集顯示名稱等

+0

'Fields.BookingTime'本身必須是'DateTime'類型,所以當然你不能索引它。如果你從代碼中移除了[this],會發生什麼? –

+0

@Luke你看過任何答案嗎? – Byyo

回答

-1

固定它,我發現領域的參考是一個Int64在我剛纔做的一個模塊中,所以忘了它默認爲Int64

Doh!

1

你的代碼看起來應該是這樣

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

Fields.BookingTime出現爲類型DateTime而不是DateTime[],因此您無法通過索引訪問它

0

我覺得你的索引是錯誤的,this關鍵字是指從您所呼叫的屬性的對象,可能是你的代碼會是這樣

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