0

我想知道是否可以在 EF 中自定义我的实体,这些实体不一定对应于数据库表中的所有字段。这样我就可以利用内置的 MVC 验证功能。

这是我正在尝试做的一个简化示例。所以假设我有一个 Person 表定义为:

-Id,
-Name,
- 出生地。

在视图中,用户将输入其姓名,然后选择出生国家,然后选择其位置。由于位置属于某个国家/地区,因此无需将出生国家/地区存储在 person 表中,但需要在视图中选择该国家/地区,以便填充位置选项。

因此,国家/地区是视图中的必需值。

我知道我可以在服务器上手动验证这个必需的值,但我想知道我是否可以在名为 CountryId 的 EF 实体中定义一个额外的属性,该属性将被标记为必需,然后我得到所有默认的 MVC 验证功能。

如果这是一种常见的做法,将不胜感激链接到有用的教程。

谢谢

4

1 回答 1

3

我想说您可以使用 MVVM 模式来拆分您的 ViewModel,这可能与您的数据模型不同。所以你可以在它上面设置验证属性。此博客文章中更详细地描述了该方法:其背后的想法是让您的 ViewModel 以某种方式对其进行验证,并将您的数据放入业务模型的适当字段中。您可以使用某种 Mapper 解决方案。AutoMapper 是一个很好的开始。

于 2012-05-06T21:02:17.773 回答