我应该将DTO对象放入域服务/业务层吗?
此类属性是否有数据注释,这是一种好的做法吗?特别是对于asp.net mvc 2的客户端验证? (我没有访问asp.net mvc3,否则我可以访问IClientValidator?或类似的界面)...
否则我的所有相关内容都在c#中,我将任何错误冒充到UI或Web项目
我希望将DTO翻译成我的域服务层内的实体,以便对上述内容的答案表示赞赏..
答案 0 :(得分:2)
您应该将DTO放在单独的组件中以避免层耦合。
在此处阅读更多内容:http://martinfowler.com/eaaCatalog/separatedInterface.html
此类属性是否有数据注释,这是一种好的做法
是的,我想是的。因为它使所有层都能在没有代码重复的情况下验证对象。属性也会添加到sandcastle生成的帮助文件中,让每个人都可以阅读它来查看模型/ DTO的合同要求。