2011-06-14 14 views
10

क्या एक ही संपत्ति के साथ ऑटोमैपर का उपयोग करना संभव है? मैं यूआई पर लाइन फीड से अलग मूल्यों की सूची में अल्पविराम सीमांकित मानों के स्ट्रिंग मान को कन्वर्ट करना चाहता हूं।ऑटोमैपर - एक ही प्रॉपर्टी पर टाइप कनवर्टर का उपयोग कैसे करें

वर्तमान कस्टम कन्वर्टर्स केवल कक्षा स्तर पर काम करते प्रतीत होते हैं, और क्योंकि नियत और स्रोत प्रकार दोनों स्ट्रिंग हैं, मैं एक एकल मानचित्र नहीं बना सकता।

मैं एक ही संपत्ति पर कस्टम कनवर्टर कैसे लागू करूं? या इसके बजाय कस्टम रिज़ॉल्यूवर का उपयोग किया जाना चाहिए?

+1

आप WPF का उपयोग कर रहे हैं, तो यह एक ValueConverter साथ में करते हैं। किसी भी मामले में मेरे लिए दृश्य में ऐसा करना बेहतर है, डॉट मैपर में नहीं (लेकिन एक राय है) –

उत्तर

16

आप एक कस्टम समाधानकर्ता का उपयोग कर सकते या संपत्ति के नक्शे एक MapFrom लैम्ब्डा में अपने परिवर्तित तर्क को फोन करके:

Mapper.CreateMap<TSource, TDest>().ForMember(dto => dto.DestPrp, 
                 e => e.MapFrom(o => ConvertTo(o.SourceProp))) 
+0

कनवर्टो() - क्या यह एक ऑटोमैपर विधि है या मेरा खुद का है? – jaffa

+0

आपके स्वयं को दिए गए संपत्ति रूपांतरण के लिए विशेष रूप से तैयार किया गया है। – ondrejsv

+0

ठीक है, मैं वास्तव में बस कर सकता था: ओ => ओ। MyProperty.Replace (",", पर्यावरण। न्यूलाइन); – jaffa

संबंधित मुद्दे