检查linq对象中的可空属性

时间:2013-07-24 20:29:58

标签: c# asp.net-mvc asp.net-mvc-4

您有一个名为Customer的linq对象,它基本上是我在数据库中的Customer表,其中包含以下字段

Name Varchar(128) NOT NULL
Email Varchar(128) NULL
PostCode Varchar(16) NOT NULL
...a lot more fields

此对象绑定到mvc4中的模型:

public class EventModel{

    public Customer Customer {get;set;}

}

我想要做的是当这个绑定到模型时添加一个自定义验证对象来检查对象的属性以验证视图中的表单。在探索我的linq对象时,我可以看到有Nullable和Server Data Type等属性,例如Name字段的Nullable设置为false,Server Data Type是Varchar(128)NOT NULL。从这里我可以创建以下内容:

[Required, StringLength(128)]

有没有人对此有任何想法或有更简单的方法?传递任何对象以与表单进行比较的通用方法将是理想的。

1 个答案:

答案 0 :(得分:1)

我会在您的模型上使用Fluent Validation,并检查客户实体的元素

或者,您可以修改生成实体的T4模板,并让它生成部分类,因此Customer将是部分类。然后,您可以在与Customer关联的其他部分文件上创建验证方法。