1
我有一個Person類,這對於這個問題的目的,僅僅是如何覆蓋DataAnnotations
public class Person
{
[Required(ErrorMessage = "***")]
[Display(Name = "Your full name")]
public string Name { get; set; }
}
我繼承這是我投訴類
public class Complaints : Person
{
[Required(ErrorMessage = "***")]
[Display(Name = "Detail of the issue")]
public string Detail{ get; set; }
}
一切正常。
問題是,我們現在希望用戶不需要輸入完整的名稱,但是我已經設置爲必需。
由於我的Person類在其他地方使用,所以我無法更改Required屬性。
如何覆蓋派生類中的DataAnnotations
?我猜(這也解釋了我的困惑),因爲DataAnnotation
屬於屬性,我不能只是覆蓋DataAnnocation
並必須重寫整個屬性?
使用'new'關鍵字。將一個屬性添加到'Complaints' - 'public new string Name {get;組; }(沒有屬性)或更好的,使用視圖模型。 –
謝謝。我如何在這個實例中使用ViewModel,它與具有屬性@StephenMuecke的類有什麼不同? – MyDaftQuestions
視圖模型是特定於視圖的類。請參閱[什麼是MVC中的ViewModel?](http://stackoverflow.com/questions/11064316/what-is-viewmodel-in-mvc) –