का उपयोग कर मॉडल में कुछ फ़ील्ड को अपडेट करने के लिए कैसे बचें I asp.net mvc 4 और EF के लिए नया हूं। मैं उपयोगकर्ता मॉडल बना रहा हूं जो उपयोगकर्ता की जानकारी बनाता/अपडेट करता है। मॉडल के लिए कोड निम्नानुसार है:एएसपीनेट एमवीसी 4
....
public int UserID { get; set; }
[Required]
public string UserName { get; set; }
[Required]
public string Password { get; set; }
[Compare("Password")]
public string VerifyPassword { get; set; }
.....
SOME OTHER FIELDS COMES HERE
......
यह वही मॉडल बनाने/अपडेट गतिविधि के लिए उपयोग किया जाता है। यह उपयोगकर्ता बनाने के लिए ठीक काम करता है लेकिन अपडेट करते समय मैं नहीं चाहता कि उपयोगकर्ता अपना आईडी अपडेट करें, उपयोगकर्ता नाम ताकि मैं इसे पढ़ सकूं, उपयोगकर्ता पासवर्ड/पासवर्ड पासवर्ड सत्यापित नहीं करना चाहता हूं इसलिए मैंने इसे देखने से हटा दिया। अब अपडेट करते समय (संपादन मोड) मुझे हमेशा पासवर्ड फ़ील्ड के लिए सत्यापन त्रुटि संदेश मिल रहा है। तो मेरा सवाल यह है कि मैं इन क्षेत्रों को अद्यतन करने से कैसे बचूं और अन्य क्षेत्रों के लिए अद्यतन कैसे करूं। इस समस्या को हल करने के लिए मैं व्यूमोडेल बनाने की कोशिश करता हूं लेकिन यह मेरी मदद नहीं करता है। इसके अलावा नियंत्रक में इस तरह मान्यता को दरकिनार करने के लिए कोड कहा:
public ActionResult Edit(User user)
{
ModelState.Remove("Password");
ModelState.Remove("VerifyPassword");
ModelState.Clear();
if (ModelState.IsValid)
{
db.Entry(user).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
}
यह मैं ModelState.IsValid = सच दे लेकिन अद्यतन करने के लिए विफल रहता है। कृपया मुझे इस समस्या का समाधान दें।
अग्रिम धन्यवाद ..
उत्तर के लिए धन्यवाद। जैसा आपने कहा था मैंने वही किया। UserID द्वारा रिकॉर्ड ले कर और मैंने केवल उन्हीं मानों को सेट किया है जिन्हें मैं अपडेट करना चाहता हूं, पासवर्ड और अन्य फ़ील्ड को छोड़कर जिन्हें मैं अपडेट नहीं करना चाहता हूं। यह मेरे लिए काम करता है। धन्यवाद। – CodeWarrior
कोई समस्या नहीं, मदद करने में खुशी हुई। – hutchonoid
इससे माँ ने भी मदद की! बस थोड़ा सुधार: कार सी = डीबी.कार्स.फिंड (कार.आईडी); – stefan