त्रुटि का निपटारा किया गया है, मैं ईएफ के लिए नया हूं और मैं एक विस्तार विधि का उपयोग करने की कोशिश कर रहा हूं जो मेरे डेटाबेस प्रकार User
से मेरी जानकारी कक्षा UserInfo
में परिवर्तित हो जाता है।
यदि मैं कोई फर्क पड़ता हूं तो मैं डेटाबेस का उपयोग कर रहा हूं? नीचेऑपरेशन पूरा नहीं किया जा सकता है क्योंकि DbContext को
मेरे कोड त्रुटि क्योंकि DbContext निपटारा कर दिया गया है
कार्रवाई पूर्ण नहीं किया जा सकता है देता है।
try
{
IQueryable<User> users;
using (var dataContext = new dataContext())
{
users = dataContext.Users
.Where(x => x.AccountID == accountId && x.IsAdmin == false);
if(users.Any() == false)
{
return null;
}
}
return users.Select(x => x.ToInfo()).ToList(); // this line is the problem
}
catch (Exception ex)
{
//...
}
मैं देख सकता हूँ क्यों यह यह करना होगा, लेकिन मैं यह भी समझ में नहीं आता क्यों का परिणाम जहां बयान users
वस्तु में सहेजा नहीं जा रहा है?
तो मुझे लगता है कि मेरा मुख्य प्रश्न यह है कि यह क्यों काम नहीं करता है और दूसरा, एक्सटेंशन विधियों और ईएफ का उपयोग करने का सही तरीका क्या है?
धन्यवाद का उपयोग करके अंदर लिखने की आवश्यकता है। अब मैं देख सकता हूं कि IQueryable वह जगह है जहां मैं परेशानी में भाग रहा हूं। यदि मैं उपयोगकर्ताओं को डालता हूं। उपयोग() ... लाइन का उपयोग कथन में करें, यह मुझे एक और त्रुटि देता है (मुझे लगता है कि अलग सवाल)। तो मैंने वापसी प्रकार को IENumerable के रूप में बदल दिया और इसने मेरी समस्या हल कर दी है। –
Colin
धन्यवाद यह मेरे लिए काम किया गया है और अब मुझे पता चला है कि IQueryable आवश्यक सक्रिय DBContext –