2012-06-14 12 views
5

मैंने NuGet का उपयोग करके EntityModel संस्करण 4.3 में अपग्रेड किया।'ऑब्जेक्ट कॉन्टेक्स्ट' में 'एंट्री' की परिभाषा नहीं है और कोई एक्सटेंशन विधि 'प्रविष्टि'

अब मैं अपना EntityObject.State बदलना चाहता हूं, लेकिन यह .Entry() विधि नहीं ढूंढ सकता है।

वर्तमान स्थिति Deleted है।

यह मुझे क्या करना चाहते हैं:

someObjectContext.Entry(someEntityObject).State = EntityState.Unchanged;

EntityFramework और EntityFramework.Extended को referances जुड़ जाते हैं।

तो, मुझे क्या याद आ रही है?

संपादित

मेरे NuGet उत्पादन:

PM> Install-Package EntityFramework -Version 4.3.1 
'EntityFramework 4.3.1' already installed. 
Data already has a reference to 'EntityFramework 4.3.1'. 

उत्तर

13

आप ObjectContext, जो Entry विधि नहीं है का उपयोग कर रहे हैं। आप DbContext उपयोग करने के लिए है, जो अतिरिक्त तरीकों के साथ ObjectContext के चारों ओर एक आवरण है होगा, 4.3 4.1 (Slauma को सुधार धन्यवाद) एफई में जोड़ा जहाँ तक मुझे याद है - यह भी जब जरूरत DbContext से ObjectContext निकालने के लिए एक रास्ता नहीं है:

DbContext context = new DbContext(yourObjectContext, true); //or false, depends what you want 

यहाँ निर्माता के लिए एक link है:

ObjectContext context = ((IObjectContextAdapter)yourDbContext).ObjectContext; 

यहाँ दूसरी तरह के आसपास है।

+0

ईएफ 4.1 में जोड़ा गया ... – Slauma

+0

@Slauma सुधार के लिए धन्यवाद, अब संपादन ... :) –

+0

@ ट्रस्टमे-I'maDoctor मदद के लिए धन्यवाद। सही काम करो! =) – Willem

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