数据库中不需要的 属性 的必需属性
Required attribute for property that is not required in the database
我有一个表格,其中一些字段是必填的。一些必填字段并不总是必填的,因此数据库中存在空值。
如果我为 属性 添加 [Required],我将得到一个 SqlNullValueException,因为数据库中有空值。
让字段表现得好像它具有 [Required] 属性的最佳做法是什么?
[Required]
public string? foo { get; set; }
你对这里的上下文有点了解,但我假设你正在使用 Entity Framework 并且你有一个 class
实体设置,这就是你的 [required]
场地。然后我假设您在表单中使用相同的 class。
如果是这种情况,我建议您创建第二个 class
作为您的视图模型。这样你就有了一个数据模型(实体class)和一个视图模型(特定于前端的class)。然后你就可以很容易的把两个行为的逻辑分开了。
您也可以使用 AutoMapper 之类的工具来更轻松地在两者之间传输 属性 值。
我有一个表格,其中一些字段是必填的。一些必填字段并不总是必填的,因此数据库中存在空值。
如果我为 属性 添加 [Required],我将得到一个 SqlNullValueException,因为数据库中有空值。
让字段表现得好像它具有 [Required] 属性的最佳做法是什么?
[Required]
public string? foo { get; set; }
你对这里的上下文有点了解,但我假设你正在使用 Entity Framework 并且你有一个 class
实体设置,这就是你的 [required]
场地。然后我假设您在表单中使用相同的 class。
如果是这种情况,我建议您创建第二个 class
作为您的视图模型。这样你就有了一个数据模型(实体class)和一个视图模型(特定于前端的class)。然后你就可以很容易的把两个行为的逻辑分开了。
您也可以使用 AutoMapper 之类的工具来更轻松地在两者之间传输 属性 值。