को देखते हुए निम्नलिखित स्रोतों:Automapper और वर्ग पदानुक्रम
public class SourceBase { public string TheString { get; set; } }
public class SourceDerived : SourceBase { }
और गंतव्य:
public class DestBase { public string MyString { get; set; } }
public class DestDerived : DestBase { }
और यह मानचित्रण:
CreateMap<SourceBase, DestBase>()
.ForMember(dest => dest.MyString, o => o.MapFrom(x => x.TheString))
.Include<SourceDerived, DestDerived>();
CreateMap<SourceDerived, DestDerived>();
Mapper.AssertConfigurationIsValid(); // Exception is thrown here
हालांकि, इस MyString प्रतिसाद नहीं कह एक मानचित्रण त्रुटि देता है DestDerived पर मैप नहीं किया गया। क्या देता है? क्या मुझे वास्तव में सभी व्युत्पन्न प्रकारों में बेस क्लास गुणों के लिए मैपिंग दोहराने की आवश्यकता है (मेरे पास मेरे वास्तविक कोड में एक से अधिक उप-वर्ग हैं)।
संपादित करें:
सटीक अपवाद DestDerived पर निम्नलिखित 1 गुण मैप नहीं किया जा सकता है: MyString। Destederived पर एक कस्टम मैपिंग अभिव्यक्ति जोड़ें, अनदेखा करें या संपत्ति का नाम बदलें।
सही त्रुटि क्या है? –