c# - 将验证附加到 MVC Controller / View 中使用的 EF 对象?

标签 c# asp.net asp.net-mvc entity-framework

我们正在整合一个快速项目(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/

相关文章:

c# - C# 中的 session 与静态属性

asp.net - 如何从子 Web 窗体刷新 asp.net 主 Web 窗体

javascript - Asp.NET MVC 中的模态

asp.net-mvc - 使用模型描述中的标题属性创建 CheckboxFor MVC 帮助程序

jquery $.post 获取从方法返回的字符串

c# - 使用 Entity Framework 更新对象的所有字段

c# - 如何查找成员变量是否为只读?

c# - 密封必须与覆盖一起使用?

c# - 如何在不降低 C# 质量的情况下调整 Gif 的大小

asp.net - 在 ASP.Net 中显示/格式化 SQL 2005 货币数据类型的最佳方式