我有一个名为类添加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和部分与它??
谢谢
还是不接受的答案。 –