如何使一个实体框架财产NOT NULL,但在表单提交,不需要(How to make an Enti

2019-10-17 04:26发布

我使用实体框架4.1代码优先模式。 一个常见的模式是很多对象引用谁拥有它们的用户,如。

public class Item
{
    public User Owner { get; set; }
}

这将创建一个数据库中的空列,但因为每个项目必须有一个老板,我想列标NOT NULL。 如果我使用[Required]属性然后提交表单创建一个错误的项目成果。 那场从未在代码通过表单设置,只能手动。

Answer 1:

它通常建议针对这种情况,创建单独的视图模型。 使用数据库模型作为输入表格视图模型被看作是一个反模式。

做一个ItemViewModel具有相同的属性Item及相关数据验证属性。 您可能需要使用一个名为库Automapper自动无聊在这些情况下需要财产拷贝代码。



文章来源: How to make an Entity Framework property NOT NULL, but not required in form submission