मैं एक GridViewएंटिटी फ्रेमवर्क का उपयोग करने की कोशिश कर रहा हूं, लेकिन हर बार मुझे निम्न त्रुटि मिल रही है:
"संपत्ति एक्सेसर 'लोनप्रोडक्ट' ऑब्जेक्ट पर 'COSIS_DAL.MemberLoan' ने निम्न अपवाद को फेंक दिया: ObjectContext इंस्टेंस को डिस्पोज़ कर दिया गया है और अब उन ऑपरेशनों के लिए उपयोग नहीं किया जा सकता है जिनके लिए कनेक्शन की आवश्यकता होती है।"
मेरा कोड है:
public List<MemberLoan> GetAllMembersForLoan(string keyword)
{
using (CosisEntities db = new CosisEntities())
{
IQueryable<MemberLoan> query = db.MemberLoans.OrderByDescending(m => m.LoanDate);
if (!string.IsNullOrEmpty(keyword))
{
keyword = keyword.ToLower();
query = query.Where(m =>
m.LoanProviderCode.Contains(keyword)
|| m.MemNo.Contains(keyword)
|| (!string.IsNullOrEmpty(m.LoanProduct.LoanProductName) && m.LoanProduct.LoanProductName.ToLower().Contains(keyword))
|| m.Membership.MemName.Contains(keyword)
|| m.GeneralMasterInformation.Description.Contains(keyword)
);
}
return query.ToList();
}
}
protected void btnSearch_Click(object sender, ImageClickEventArgs e)
{
string keyword = txtKeyword.Text.ToLower();
LoanController c = new LoanController();
List<COSIS_DAL.MemberLoan> list = new List<COSIS_DAL.MemberLoan>();
list = c.GetAllMembersForLoan(keyword);
if (list.Count <= 0)
{
lblMsg.Text = "No Records Found";
GridView1.DataSourceID = null;
GridView1.DataSource = null;
GridView1.DataBind();
}
else
{
lblMsg.Text = "";
GridView1.DataSourceID = null;
GridView1.DataSource = list;
GridView1.DataBind();
}
}
त्रुटि के LoanProductNameकॉलम का उल्लेख कर रहा है Gridview। उल्लेखित: मैं बैक एंड डीबी के रूप में C #, ASP.net, SQL-Server 2008 का उपयोग कर रहा हूं।
मैं एंटिटी फ्रेमवर्क में काफी नया हूं। मुझे समझ नहीं आ रहा है कि मुझे यह त्रुटि क्यों हो रही है। क्या कोई भी कृपया मेरी मदद कर सकता है?
db.MemberLoans.Include("LoanProduct").OrderByDescending()सिंटैक्स की जाँच करने का प्रयास करें क्योंकि मेरे पास वीएस नहीं है मेरे सामने।
db.MemberLoans.Include("LoanProduct").Include("SomeOtherTable)। @Tragedian और @lazyberezovsky
query.Include("SomeOtherTable")