Err*_*ale 5 c# asp.net-mvc automapper multi-layer
我正在创建一个多层应用程序,将asp.net mvc应用程序作为最高层.
该体系结构如下(--->表示引用):
表示层--->服务层--->业务层---->数据访问层---->数据库
此外,还有一个名为"Infrastracture"的层,它被所有层引用.
每一层都有自己的实体.例如:在表示层中,我们可能在服务层UserDTO中具有UserViewModel,在业务层UserBDO中,最后在数据访问层中具有User.
automapper用于自动化不同类型之间的转换.
我读到一些开发人员建议将映射创建放在Global.asax中,但很明显,如果你有一个多层应用程序,你就无法在那里创建所有映射.您无法在表示层中将User与UserBDO映射.
所以,我要求用最干净的方法来管理多层应用程序中的映射集中化.您甚至可以建议更改体系结构.
我建议您已经有了答案 - 如果您无法在一个地方访问所有类型 - 只需将映射配置分成几个部分。该解决方案在大型项目中更易于维护(想象一下在一个配置中有 100 或 1000 个映射)。例如,我们使用特定的映射器将第三方WCF合约转换为自定义DTO。该映射器与 WCF 客户端一起位于单独的项目中。因此合约和映射无法从外部访问。
| 归档时间: |
|
| 查看次数: |
3124 次 |
| 最近记录: |