我有一個名爲類添加MetadataType到派生類在C#
public partial class Contact
{
public int Id { get; set; }
public string Title { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
我有一個名爲
稱爲PersonMetaDatapublic partial class Person : Contact
{
public string Occupation { get; set; }
public string Country { get; set; }
}
我已經被宣佈我叫個人三等功部分和第四類另一類用於聲明註釋
[MetadataType(typeof(PersonMetadata))]
public partial class Person : Contact
{
}
public class PersonMetadata
{
[StringLength(20, ErrorMessageResourceName = "FirstNameLength",
ErrorMessageResourceType = typeof(BasicErrors))]
[Required(ErrorMessageResourceName = "FirstNameRequired",
ErrorMessageResourceType = typeof(BasicErrors))]
public string FirstName { get; set; }
[StringLength(20, ErrorMessageResourceName = "LastNameLength",
ErrorMessageResourceType = typeof(BasicErrors))]
[Required(ErrorMessageResourceName = "LastNameRequired", ErrorMessageResourceType
= typeof(BasicErrors))]
public string LastName { get; set; }
}
在我的MVC視圖中,我做了一個強類型基於Person的頁面?問題是,必需和字符串長度驗證不起作用。當繼承一個類並創建一個引用MetadataType的分類時,會發生此問題。
如果沒有繼承,那麼在調用Partial Class時,MetadataType可以正常工作。
任何解決方案使用派生類的MetadataType和部分與它??
謝謝
還是不接受的答案。 –