मैं ऐरे के कई स्तरों को फ़्लैट करने के लिए ऑटोमैपर का उपयोग करने की कोशिश कर रहा हूं।ऑटोमैपर और नेस्टेड सरणी flattening
class X {
public string A { get; set; }
public Y[] B { get; set; }
}
class Y {
public string C { get; set; }
public Z[] D { get; set; }
}
class Z {
public string E { get; set; }
public string F { get; set; }
}
और निम्न गंतव्य:
class Destination {
public string A { get; set; }
public string C { get; set; }
public string E { get; set; }
public string F { get; set; }
}
मैं ऐसा करने में सक्षम होने के लिए क्या करना चाहते हैं एक या अधिक एक्स, जैसे से एक सूची प्राप्त है
निम्नलिखित स्रोत वर्गों पर विचार करें :
Mapper.Map<IEnumerable<X>, IEnumerable<Destination>>(arrayOfX);
मैं यह समझने में असमर्थ हूं कि यह प्राप्त करने के लिए किस प्रकार की मैपिंग कॉन्फ़िगरेशन का उपयोग करना है। MapFrom 1: 1 रचनाओं के लिए जाने का तरीका प्रतीत होता है, लेकिन ऐसा लगता है कि जब तक मैं ऑटोमैपर के गंतव्य नामकरण सम्मेलन का उपयोग नहीं करता तब तक सरणी (या अन्य गणनीय) को संभालने में सक्षम नहीं लगता है।
इसे प्राप्त करने के तरीके पर कोई अंतर्दृष्टि?
यह एक फेंक देगा:
यहाँ मानचित्रण को मान्य और कार्रवाई में यह दिखाने के लिए इकाई परीक्षण के एक जोड़े हैं: इस तरह आप अपने वस्तु को भरने के लिए है कि मानचित्रण कह सकते हैं का एक उदाहरण है ऑटोमैपर मैपिंग अपवाद अगर बी या डी शून्य या शून्य-लंबाई सरणी है। एक्स [] arrayOfX = नया एक्स [] {नया एक्स() {ए = "ए 1", बी = नल}, नया एक्स() {ए = "ए 2", बी = नया वाई [] {}}}; –
@JayWalker ने मेरी पोस्ट संपादित की। बस शून्य जांच जोड़ा गया। खोजने के लिए धन्यवाद। –