【发布时间】:2011-09-15 23:26:58
【问题描述】:
我在生成的数据访问层中使用 AutoMapper。这很好用。在另一个层中使用 AutoMapper 并实现在 DAL 中创建的带有Mapper.CreateMap<T1, T2>() 的映射仍然存在时,这有点令人困惑。我看到Mapper.Reset() 将删除这些,但我宁愿不必让其他层担心 DAL。最佳做法是在 DAL 中的映射操作之前和之后放置 Mapper.Reset() 吗?或者有没有办法给这些 DAL 映射一个非默认键,让它们持久存在但不干扰 AutoMapper 在其他层的使用?
注意:在 DAL 中使用 AutoMapper 有一些特定的选项,例如我的其他层不应该使用的一些 .ForMember(...) 调用(如果没有Mapper.Reset(),它们会重用这些选项)。
【问题讨论】:
标签: data-access-layer automapper reset separation-of-concerns