我正在使用 MVC 和实体框架。我从代码优先设计开始,我正在应用 [Required] 和 [Display] 等属性,但如果我首先使用模型,我该怎么做?我已经创建了我的数据库模型。
谢谢你。
我正在使用 MVC 和实体框架。我从代码优先设计开始,我正在应用 [Required] 和 [Display] 等属性,但如果我首先使用模型,我该怎么做?我已经创建了我的数据库模型。
谢谢你。
首先,我确定您已经从 Edmx (?) 生成了类。然后
解决方案一
生成的类是部分类。
因此,您可以添加一个新的类文件,其中包含部分类(与生成的类相同),具有 MetadataType 属性(类可以为空)。
而在MetadataType属性中给出的类中,可以把“生成类”的属性,加上属性。
//partial class
[MetadataType(typeof(ModelClassValidation))]
public partial class ModelClass
{
}
//class used for attributes
public class ModelClassValidation
{
[Required]
[DisplayName("First Name")]
public string FirstName
{
get;
set;
}
}
解决方案 2
永远不要使用你的 Model 类,但是 ViewModel(s)(我想你知道它是什么,如果不,你会发现大量的信息而不需要太多的努力),并将属性放在这些 ViewModel 类中。