2012-01-22 10 views
12

मुझे एंटिटी फ्रेमवर्क 4 से अपने डेटाबेस संदर्भ पर कॉल करने का प्रयास करते समय "प्रतीक ऑब्जेक्टस्टेट प्रबंधक" को हल नहीं कर सकता है। मुझे इस समस्या को रखने वाले किसी और को नहीं मिल रहा है। मैंने सिस्टम का उपयोग करने का प्रयास किया है। डेटा और सिस्टम। डेटा। ऑब्जेक्ट्सप्रतीक ऑब्जेक्टस्टेट प्रबंधक को हल नहीं कर सकता

क्या कोई विशिष्ट इकाई फ्रेमवर्क है जिसे ऑब्जेक्टस्टेट प्रबंधक का उपयोग करने के लिए किया जाना चाहिए? या क्या मुझे कुछ प्रकार का इंस्टॉलेशन पैकेज याद आ रहा है? मैं डाटाबेस फर्स्ट एंटिटी फ्रेमवर्क का उपयोग कर रहा हूं।

यहाँ है कोड यह मेरी त्रुटि दे रहा है: (लाइन 7)

[HttpPost] 
     public ActionResult EditProfile(User user) 
     { 
      if (ModelState.IsValid) 
      { 
       db.Users.Attach(user); 
       db.ObjectStateManager.ChangeObjectState(user, EntityState.Modified); 
       db.SaveChanges(); 
      } 
      return RedirectToAction("Profile"); 
     } 

उत्तर

28

मुझे यकीन है कि आप अब तक एक समाधान पाया, लेकिन मैं तो बस अब एक ही मुद्दे में भाग गया और बदलकर इसे हल करने में सक्षम था हूँ निम्न के EntityState लाइन:

db.Entry(user).State = EntityState.Modified; 
+2

ईएफ 5 से ईएफ 6 तक अपग्रेड किया गया और यह मेरे लिए काम किया। – sobelito

0

आप परियोजना के लिए System.Data.Entity विधानसभा जोड़ दिया है?

भी System.Data.Objects सही है।

+0

चूंकि मैं रिशेर्पर का उपयोग कर रहा हूं, यह कहता है कि दोनों का उपयोग नहीं किया जा रहा है, भले ही वे जोड़े गए हों। – Rizowski

13

शायद आप पहले ईएफ कोड का उपयोग कर रहे हैं। इस मामले में आप, तुम्हारा IObjectContextAdapter की स्पष्ट implemenatation करने के लिए कोड वापस लौटने के लिए है यानी

((IObjectContextAdapter)db).ObjectContext.ObjectStateManager 
+1

मैं डाटाबेस फर्स्ट का उपयोग कर रहा हूं, मुझे यह कहना है कि यह काम नहीं करता है। – Rizowski

+0

मैं ईएफ 5.0 का उपयोग कर रहा हूं और यह मेरे लिए काम करता है –

+0

धन्यवाद, यह मेरे लिए काम करता है। मुझे नामस्थान जोड़ने की भी आवश्यकता है: System.Data.Entity.Infrastructure; – Cesar

0

एक अतिरिक्त आइटम की जांच करने के लिए कि इस परियोजना के लिए लक्ष्य .नेट फ्रेमवर्क शुद्ध करने के लिए 4 सेट कर दिया जाता है।

+0

इसे एक टिप्पणी के रूप में पोस्ट किया जा सकता है, या अधिक विशिष्ट हो सकता है। – DontVoteMeDown

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

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