पहले, प्रमुख अंतर ViewModel व्यवहार या तरीकों हो सकता है यह है कि डीटीओ नहीं होना चाहिए !!!
दूसरा, एएसपी.नेट एमवीसी में व्यूमोडेल के रूप में डीटीओ का उपयोग करना आपके आवेदन को डीटीओ के साथ कसकर जोड़ता है और यह डीटीओ का उपयोग करने का बिल्कुल विरोध करने का उद्देश्य है। यदि आप ऐसा करते हैं, तो आपके डोमेन मॉडल या डीटीओ का उपयोग करके भिन्नता क्या है, विरोधी पैटर्न प्राप्त करने के लिए अधिक जटिलता?
इसके अलावा ASP.NET में ViewModel सत्यापन के लिए DataAnnotations उपयोग कर सकते हैं।
वही डीटीओ में अलग-अलग व्यूमोडल्स मैपिंग हो सकती है, और वन व्यू मॉडेल को अलग-अलग डीटीओ (हमेशा ऑब्जेक्ट मैपिंग संरचना के साथ) से बनाया जा सकता है। क्योंकि मुझे लगता है कि यदि आपके पास एक व्यूमोडेल है जिसमें डीटीओ है, तो हमें भी वही समस्या होगी।
अपनी प्रस्तुति परत से, डीटीओ को अनुबंध के रूप में सोचें, आपको उस ऑब्जेक्ट को प्राप्त होगा जिसे आपको अपने आवेदन के लिए अजनबी के रूप में विचार करना है और उस पर कोई नियंत्रण नहीं है (भले ही आपके पास सेवा हो, डीटीओ और प्रेजेंटेशन परतें आपकी हैं)।
अंत में अगर आप इस साफ जुदाई करते हैं, developpers आसानी से एक साथ काम कर सकते हैं। व्यक्ति जो डिजाइन ViewModels, दृश्य और नियंत्रकों सेवा परत या डीटीओ कार्यान्वयन के बारे में चिंता करने के लिए जब दूसरों developpers उनके क्रियान्वयन खत्म क्योंकि वह मानचित्रण कर देगा नहीं है ... यहाँ तक कि उसने मजाक उपकरण या मैनुअल मजाक उपयोग कर सकते हैं परीक्षण के लिए डेटा के साथ प्रस्तुति परत भरने के लिए।
स्रोत
2012-12-27 18:09:16
मुझे लगता है कि यह है कि ASP.NET MVC में ViewModels के रूप में सबसे जवाब MVVM उल्लेख है और आप ASP.NET MVC के साथ काम कर रहे हैं, WPF (MVVM) में ViewModels के लिए 100% समान नहीं होते हैं उल्लेख करने के लिए प्रासंगिक है। –