2010-04-19 19 views
6

मैं अपने MVC परियोजना में ADO.NET संस्थाओं का भार है। मैं सीधे इन विचारों/नियंत्रकों से इन इकाइयों का उपयोग करने जा रहा था ... हालांकि, मुझे लगता है कि व्यूमोडल्स का उपयोग करना शायद सबसे अच्छा है जो दृश्य को आवश्यकतानुसार अधिक सटीक रूप से प्रतिबिंबित करता है।ASP.NET MVC ViewModel ऑटो पीढ़ी

मैं एक ऐसे तरीके की तलाश में हूं जो मैं मौजूदा इकाई से व्यूमोडेल को स्वतः उत्पन्न कर सकता हूं, यानि मौजूदा सदस्य से रैपर या एडाप्टर पैटर्न को स्वतः उत्पन्न कर सकता हूं ... या एक टी 4 टेम्पलेट जो लूप करेगा एक इकाई के सार्वजनिक गुण, और ViewModel के लिए आउटपुट गुण ... फिर मैं उन गुणों को हटा सकता हूं जिनकी मुझे आवश्यकता नहीं है या कुल दृश्य मॉडल आदि नहीं बनाते हैं

मुझे ऑटो-जेन के लिए कहीं भी कोई रास्ता नहीं दिख रहा है एक मौजूदा प्रकार से रैपर या एडाप्टर पैटर्न वर्ग?

विचार कार्यावधि में तो है, AutoMapper का उपयोग ViewModel और इकाई के बीच मैप करने के लिए।

धन्यवाद

उत्तर

2

आप AutoMapper का उपयोग अपने डोमेन के मॉडल से एक दृश्य मॉडल में बदलने के लिए कर सकते हैं। एक great post from Jimmy Bogard है यह बताते हुए कि आप इसे अपने नियंत्रक कार्यों के भीतर कैसे एकीकृत कर सकते हैं।

+1

नमस्ते, यकीन है कि - AutoMapper कि के लिए अच्छा है ... लेकिन मैं एक तरह से संस्थाओं से ViewModel उत्पन्न करने के लिए प्राप्त करना चाहते हैं। AutoMapper डोमेन मॉडल के लिए ViewModels से मानचित्रण गुण की विरक्ति की समस्या का हल है, लेकिन मैं मैन्युअल ViewModels में संपत्तियों की 100s डुप्लिकेट करने की विरक्ति बाहर काट करना चाहते हैं। – krisdyson

+0

@boom सूखी http://en.wikipedia.org/wiki/Don%27t_repeat_yourself – mxmissile

1

http://weblogs.asp.net/rajbk/archive/2010/05/04/a-basic-t4-template-for-generating-model-metadata-in-asp-net-mvc2.aspx

मदद कर सकते हैं। यह वास्तव में मौजूदा इकाई प्रकारों के लिए मेटाडेटा पीढ़ी के लिए है। लेकिन आप इसे डेटा एनोटेशन के साथ स्वच्छ दृश्य मॉडल उत्पन्न करने के लिए भी उपयोग कर सकते हैं। शायद थोड़ा बदलाव के साथ।