这是这片土地的基本情况。像大多数人一样,我有自己的域对象和视图模型。我喜欢使用视图模型的想法,因为它允许专门为给定的视图上下文创建模型,而不需要更改我的业务对象。
我遇到的问题是在我的域对象上定义的类型级别验证,并将这些规则发送到客户端。在这种情况下,假设我使用数据注释来描述验证规则,当我将数据从域对象移动到视图模型时,视图模型不再知道它应该让接口执行什么验证(因为验证是在域对象上定义的)。
使用MVC2,您可以让它根据当前对象的验证规则自动执行客户端/服务器端验证。但是因为验证规则是在域对象上定义的,而不是在视图模型上定义的,所以我必须在视图模型上复制验证规则才能使其正常工作。
其他人是如何处理这类问题的?我的想法是,除了将数据从域对象映射到视图模型之外,我们还需要跨验证规则进行映射,但我还没有看到其他人讨论这个问题……Brad Wilson最近详细讨论了这个问题,但并没有真正解决域对象和视图模型上的规则重复问题……你的想法是什么?
干杯安东尼
https://stackoverflow.com/questions/2181940
复制相似问题