2011-10-18 17 views
5

मैं मॉडल में किसी फ़ील्ड के सबमिट किए गए मान को साफ़ करना चाहता हूं यदि ModelState दिखाता है कि फ़ील्ड मान्य नहीं है।मॉडलस्टेट का कहना है कि फ़ील्ड अमान्य है

यह वह जगह है जहां मुझे अभी तक मिला है लेकिन मॉडल में मूल्य के लिए कुंजी को जोड़ नहीं सकता है। कोई सुझाव?

if (!ModelState.IsValid) 
{ 
    foreach (string key in ModelState.Keys) 
    { 
    if (!ModelState.IsValidField(key)) 
    { 
     // This field is not valid so set to empty string in model 
     // Something like.... 
     model[key] = ""; 
    } 
    } 
} 

उत्तर

11

आप प्राप्त मॉडल के साथ एक ही दृश्य लौटना चाहिए और यह भी निम्नलिखित के लिए अपने कोड बदलने के लिए:

if (!this.ModelState.IsValidField(key)) 
{ 
    var emptyValue = new ValueProviderResult(
     string.Empty, 
     string.Empty, 
     CultureInfo.CurrentCulture); 

    this.ModelState.SetModelValue(
     key, 
     emptyValue); 
} 
+0

मैं जानता हूँ कि यह एक पुराने सवाल है। लेकिन इस सवाल के विस्तार के रूप में -> मैं मॉडल को अद्यतन मानों के साथ कैसे एक्सेस करूं, अगर मैं नहीं चाहता कि मेरे मॉडल को अमान्य मान रखें। – user979737

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