我们正在整合一个快速项目(CRUD 表单)并决定跳过 View 模型并直接在 Controller 和 View 中使用 EF 实体。由于我不习惯这种方法,所以我对处理验证感到困惑。
例如:数据库字段的长度为 25。在我看来,如何将其传输(如果可以)到验证约束?如果我使用的是中间模型,我会将属性附加到模型属性并且它会起作用。我将如何直接使用 EF 对象来执行此操作?谢谢。
最佳答案
这可以在 Ef 生成的类上使用 MetadataType 属性来完成。 EF 生成部分类。所以这些可以扩展并添加属性。然后可以编写另一个可以具有成员装饰的“伙伴类”。例如
[MetadataType(typeof(EFGeneratedClass_MetaData))]
public partial class EFGeneratedClass
{
}
public partial class EFGeneratedClass_MetaData
{
[Required]
[Display(Name="Member1 Display")]
public string Member1 {get; set;}
}
关于c# - 将验证附加到 MVC Controller / View 中使用的 EF 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4974139/