0
Mapper.CreateMap<BusinessObject, Proxy.DataContacts.DCObject>()
.ForMember(x => x.ExtensionData, y => y.Ignore())
.ForMember(z => z.ValidPlaces, a=> a.ResolveUsing(typeof(ValidPlaces)));
Mapper.AssertConfigurationIsValid();
proxydcObject = Mapper.Map<BusinessObject, Proxy.DataContracts.DCObject>(_instanceOfBusinessObject); //throws an exception saying ValidPlaces could not be resolved
public class BusinessObject
{
public Enum1 Enum1 { get; set; }
public List<ValidPlaces> ValidPlaces{ get; set; }
}
public class ValidPlaces
{
public int No { get; set; }
public string Name { get; set; }
}
public class DCObject
{
[DataMember]
public Enum1 Enum1 { get; set; }
[DataMember]
public List<ValidPlaces> ValidPlaces{ get; set; }
}
Mapper.CreateMap作品找到時Mapper.AssertConfigurationIsValid();
(拋出此線路上沒有例外)被調用,但 當我真正調用到此處未示出的下一行的WCF服務Automapper拋出異常,說ValidPlaces不能被映射。如果我把Ignore()放在ValidPlaces屬性上,但理想地希望它通過,很好。Automapper -cannot解決泛型列表
任何AutoMapper專家在那裏都會有幫助。
我的DCObject有擴展數據,但業務對象沒有這個屬性,因此我把那個地方,否則我得到一個錯誤。另外T == U在我的情況,但我想列表翻譯爲名單 –
chugh97
2010-03-24 16:15:25
這很好。 AutoMapper自動支持List,無需任何額外配置。我可以這樣做: Mapper.Map >(new [] {1,2,3}); 零配置。你只需要註冊元素類型,並且由於元素類型在你的情況下是相同的,所以不需要額外的配置。 AutoMapper支持可分配類型的開箱即用。 –
2010-03-25 15:06:40