안녕하세요. 미리 감사드립니다.IQueryable을 사용하여 ID를 사용하여 gridview를 필터링합니다.
내 gridview를 변경하는 몇 가지 기능이 있습니다. 따라서 현재보기에서 무엇이 필요한지 알기 위해 ID를 추적하고 싶습니다. 아래 현재 코드 : VS2013에서
public void getCurrent_GridView()
{
if (GridViewFacility.DataKeys.Count > 0)
{
WISSModel.WISSEntities context = new WISSModel.WISSEntities();
//Prepare to build a "Base" query:
IQueryable<WISSModel.Base> searchListQuery = context.Bases;
for (int i = 0; i < GridViewFacility.Rows.Count; i++)
{
String id = GridViewFacility.DataKeys[i].Value.ToString();
//Refine query, one search term at a time
searchListQuery =
searchListQuery.Where(p => p.isDeleted == false && (p.BaseId.ToString().Contains(id)));
//txtSearch.Text += id + " ";
}
txtSearch.Text = "test" + searchListQuery.ToList().Count;
GridViewFacility.DataSource = searchListQuery.ToList();
GridViewFacility.DataBind();
}
}
protected void GridViewFacility_RowEditing(object sender, GridViewEditEventArgs e)
{
getCurrent_GridView();
GridViewFacility.EditIndex = e.NewEditIndex;
LoadData();
}
, 나는이 오류 얻을 :
An exception of type 'System.NotSupportedException' occurred in System.Data.Entity.dll but was not handled in user code
Additional information: LINQ to Entities does not recognize the method 'System.String ToString()' method, and this method cannot be translated into a store expression.
Althaus 감사하여이를 대체 할,하지만 내 쿼리 수있는 라인에 맞춰 count는 데이터 소스에 데이터를 넣지 않은 루프 외부에 0이옵니다. – Neo84
@ Neo84 글쎄요, 당신이 필요로 할 때 AND 절과 같은 것을하고있는 당신의 "누적"을 추측 할 수 있을까요? 그 코드로 대답하기가 쉽지 않다 ... –
아아아 맞습니다. 또는 도움이되었지만, DB의 행이 무엇이든 계산하면 그리드 뷰의 현재 상태가 아닙니다. 어떤 일이 일어나는 지 생각 해봐. 이것이 IQueryable을 사용하려는 이유입니다. – Neo84