2010-03-15 197 views
3

讓我們說我的域對象可以包含這樣的一堆對象:automapper - 如何映射對象列表

List<Thing> Things 

,其中一點是這樣定義的:

class Thing 
(
    public int ThingId { get; set; } 
    public string ThingName { get; set; } 
) 

我的DTO包含

List<string> ThingIds; 
List<string> ThingNames; 

問題是我該如何使用automapper將東西映射到DTO中的「相關位」?

謝謝。

基督教

回答

1

通過寫custom resolver,我猜。

這是相當不尋常的要求 - 失去ID和名之間的結合。


我認爲你是對的。抱歉,我仍在學習dto/viewmodel映射。你是否認爲這是可以接受的把DTO內部的域對象,因爲沒有在創造事物的DTO多少點?

不要視圖模型內混合域模型。下週你會後悔的(我確實......)。

class Thing { 
    public int ThingId { get; set; } 
    public string ThingName { get; set; } 
    public string UnnecessaryProp {get;set;} 
} 

class ThingViewModel { 
    public int ThingId { get; set; } 
    public string ThingName { get; set; } 
} 

class MyView { 
    public IEnumerable<ThingViewModel> Things {get;set;} 
} 

Here你可以找到更多關於視圖模型的想法。

+0

>這是相當不尋常的要求 - 失去身份證和名稱之間的綁定 是的我認爲你是對的。抱歉,我仍在學習dto/viewmodel映射。你是否認爲這是可以接受的把DTO內部的域對象,因爲沒有在創造事物的DTO多少點? – cs0815 2010-03-15 13:57:58