【问题标题】:Adding validation messages to MVC classes generated by Entity Framework向实体框架生成的 MVC 类添加验证消息
【发布时间】:2012-03-12 02:13:48
【问题描述】:
我正在启动一个 MVC 项目并在 EF 中设计我的数据库,这意味着我设计了表,而 VS 创建了我需要访问它们的类。
问题是,我想利用DisplayName、Required 等属性并生成验证错误消息(包括指定要验证的规则)。
据我所知,每次更改数据库时都会重新创建类,因此我无法真正将它们添加到类中。有没有另一种方法可以做到这一点并让它持续存在?
【问题讨论】:
标签:
asp.net-mvc
entity-framework
frameworks
entity
【解决方案1】:
因此,您将使用MetadataType 属性并将您的实体链接到您将设置验证属性的类型。
对于实体Person:
[MetadataType(typeof(Person_Validation))]//<<link to metadata class
public partial class Person//<<<Your real entity class
{//this is in a separate file.
//note =>partial. There's nothing in this class
}
public class Person_Validation//the validations go here.
{
[StringLength(255, ErrorMessage="Name is required"), Required]
[DisplayName("Name")]
public string Name { get; set; }
}