सबसे सरल शब्दों में, मुझे निम्नलिखित के बारे में सोचना पसंद है:
मॉडल: सख्ती से अपने डेटा मॉडल की तरह दिखता है और महसूस करता है। सभी इरादों और उद्देश्यों के लिए यह आपके डेटा मॉडल का केवल एक वर्ग प्रतिनिधित्व है। इसे आपके दृश्य या आपके दृश्य के किसी भी तत्व का कोई ज्ञान नहीं है। उस ने कहा, इसमें कोई विशेषता डेकोरेटर (यानी आवश्यक, लंबाई, आदि) नहीं होना चाहिए जो आप अपने दृश्य के लिए उपयोग करेंगे।
देखें मॉडल: आपके दृश्य और आपके मॉडल के बीच डेटा-बाइंडर के रूप में कार्य करता है और कई मामलों में, आपके मॉडल के लिए एक आवरण भी है। यह व्यू के बिना बेकार हो जाएगा, इसलिए यह आमतौर पर मल्टीपल व्यूज़ के लिए पुन: प्रयोज्य नहीं होता है और एक मानक मॉडल की तरह नियंत्रक होता है।
एक उदाहरण के रूप में, आपके मॉडल में निम्नलिखित गुण हो सकते हैं, जो आपके डेटा स्रोत का प्रत्यक्ष प्रतिनिधित्व हैं:
public string FirstName { get; set; }
public string LastName { get; set; }
अब, चूंकि आपका दृश्य मॉडल आपके दृश्य से बंधा हुआ है, तो इसमें निम्न गुण हो सकते हैं - जो मॉडल के FirstName फ़ील्ड और LastName फ़ील्ड को एक स्ट्रिंग के रूप में एक साथ जोड़ता है:
[Display(Name = "Customer Name")]
public string CustomerFullName { get { return String.Format("{0} {1}", myModel.FirstName, myModel.LastName) }}