2013-06-21 26 views
7

以下是我的MVC模型中的一個屬性。設置MaxLength會給你錯誤

[Display(Name = "Event ID")] 
[MaxLength(8, ErrorMessage = "Event ID can be of maximum 8 characters long")] 
[Required(ErrorMessage="Event ID must be entered")] 
public Nullable<int> ID_EVENTO { get; set; } 

我已綁定模型與視圖,當我嘗試點擊「提交」按鈕,它提供了以下運行時錯誤 -

無法投類型的對象「System.Int32」鍵入'System.Array'

雖然,如果我刪除「MaxLength」屬性,它開始工作。

這裏有什麼問題?

回答

10

MaxLength用於指定屬性中允許的數組或字符串數​​據的最大長度。

您的ID_EVENTO是可以爲空的int(而不是數組或字符串),這就是爲什麼該屬性不起作用。聽起來像你要麼刪除屬性或使用不同的 - Range什麼?

+0

是的,沒錯。我刪除了MaxLength,並添加了Int32,它解決了這個問題。 – Nirman

+3

什麼是錯誤消息的絕對列車殘骸。但是這個答案讓我走上了正軌,謝謝。 :) – Kjensen

+0

這解決了我在我繼承的項目上的問題。該類型是一個可爲空的int,只是從我的viewmodel中刪除了MaxLength屬性。謝謝 ;) –