GridViewEntity Frameworkm을 사용하여 채우려 고 하지만 매번 다음 오류가 발생합니다.
" 'COSIS_DAL.MemberLoan'개체의 속성 접근 자 'LoanProduct'에서 다음 예외가 발생했습니다. 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로 사용하고 있습니다.
저는 Entity Framework를 처음 사용합니다. 이 오류가 발생하는 이유를 이해할 수 없습니다. 누구든지 제발 도와 줄 수 있습니까?
db.MemberLoans.Include("LoanProduct").OrderByDescending()나는 내 앞에 VS을 해달라고 원인 구문을 확인합니다.
db.MemberLoans.Include("LoanProduct").Include("SomeOtherTable). @Tragedian 및 @lazyberezovsky로 답변 확인
query.Include("SomeOtherTable")