2013-04-13 13 views
13

मैं एमवीसी सीख रहा हूं, और एएसपी.नेट एमवीसी 3 में, ModelState कक्षा क्या है? मैंने Google और MSDN पर देखा है, लेकिन मुझे इसके उद्देश्य की स्पष्ट समझ नहीं मिल रही है। क्या कोई मदद कर सकता है?एमवीसी 3 में मॉडलस्टेट क्लास क्या है?

उत्तर

22

ViewData.ModelState अनुभाग के तहत http://www.gxclarke.org/2010/05/consumption-of-data-in-mvc2-views.html पर एक नज़र डालें।

मॉडलस्टेट संपत्ति एक शब्दकोश वस्तु है जो सर्वर पर सबमिट किए गए HTTP मान ट्रैक करती है। प्रत्येक फ़ील्ड के नाम और मूल्य को संग्रहीत करने के अलावा, यह संबंधित सत्यापन त्रुटियों को भी ट्रैक करता है। यद्यपि इसका नाम अन्यथा सुझा सकता है, मॉडलस्टेट मॉडल-जागरूक नहीं है। यह समझ में नहीं आता कि "उत्पाद" क्या है। इसमें बस "ProductName" और "UnitPrice" जैसे नामों वाले आइटमों का संग्रह शामिल है। यह अन्य वस्तुओं-ModelBinders, ViewResult, और की जिम्मेदारी है दृढ़ता से टाइप दृश्य करने के लिए मॉडल गुण के रूप में नक्शा और ModelState मूल्यों की व्याख्या

1

MVC में ModelState कक्षा एक वर्ग जो संग्रह कुंजी है कि होता है और पोस्ट विधि में सर्वर पर सबमिट किए गए डेटा के मूल्य। जब एमवीसी पोस्ट में आता है तो यह पोस्ट पैरामीटर में सभी पैरामीटर लेता है और उन्हें ModelStateDictionary के उदाहरण में रखता है। जब भी ModelState सर्वर में सक्रिय होता है, तो मॉडल के गुण उनके साथ जुड़े सत्यापन गुणों के अनुसार मान्य होते हैं। और यदि कोई भी संपत्ति अमान्य है तो उसे त्रुटि सूची में जोड़ा जाएगा। और संपत्ति ModelState.IsValid को false पर सेट किया जाएगा। यह सब कुछ सही है या नहीं, यह जांचने के लिए आप बाद में अपने कोड पर इसका उपयोग कर सकते हैं।

अधिक जानकारी के लिए this लिंक देखें।

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