哪一層應該包含AutoMapper配置?哪一層應該包含AutoMapper配置?
AutoMapper是將ViewModels映射到我的域實體。
我在我的應用程序中有三層:域,UI(MVC),基礎結構。
哪一層應該包含AutoMapper配置?哪一層應該包含AutoMapper配置?
AutoMapper是將ViewModels映射到我的域實體。
我在我的應用程序中有三層:域,UI(MVC),基礎結構。
它應該居住在它翻譯的最頂層。
如果你有域和infra之間的映射器,那麼他們應該生活在域(假設使用infra)。
如果你有UI和域之間的映射器,那麼他們應該生活在UI(假設使用域)。
這意味着較低層向下層不知道或需要知道較高層。
將視圖模型映射到域模型的地方通常是MVC體系結構中的控制器。現在你沒有太多關於你的架構,而「UI」和「Infra」不是很具體。
雖然基本上只能在已知DomainModel和ViewModel的地方調用AutoMapper配置。由於基礎結構不應該依賴於ViewModel,因此您應該在ViewModel(取決於域模型)或UI層(這將是MVC中的控制器)中進行映射。
我有UI(ViewModels)和域之間的映射。如果我放入基礎設施,如果我明天更換用戶界面,效果會更好嗎? – 2011-06-03 19:28:41
@Acaz - 我不明白你的意思。 – Oded 2011-06-03 19:32:22
在基礎設施中放置automapper配置更好,因爲如果我更改UI層,地圖會保留? – 2011-06-03 19:42:52