我已被平坦化的域對象插入的DTO如顯示在下面的例子:使用AutoMapper壓扁嵌套對象的更好方法?
public class Root
{
public string AParentProperty { get; set; }
public Nested TheNestedClass { get; set; }
}
public class Nested
{
public string ANestedProperty { get; set; }
}
public class Flattened
{
public string AParentProperty { get; set; }
public string ANestedProperty { get; set; }
}
// I put the equivalent of the following in a profile, configured at application start
// as suggested by others:
Mapper.CreateMap<Root, Flattened>()
.ForMember
(
dest => dest.ANestedProperty
, opt => opt.MapFrom(src => src.TheNestedClass.ANestedProperty)
);
// This is in my controller:
Flattened myFlattened = Mapper.Map<Root, Flattened>(myRoot);
我已經看過了一些實例,且到目前爲止,這似乎是一個壓平嵌套層級的方式。但是,如果子對象具有多個屬性,則此方法不會節省太多編碼。
我發現這個例子:
,但它需要映射的對象,由圖()函數要求,按照我的理解,這將不與輪廓工作的實例。
我是AutoMapper的新手,所以我想知道是否有更好的方法來做到這一點。
我有和約翰一樣的挑戰。 – noocyte
沒有人可以幫忙嗎? –