【发布时间】:2012-03-28 23:56:56
【问题描述】:
我正在尝试将 Linq 查询作为字符串发送到要在 where 子句中使用的方法。由于 IEnumerable 对此不起作用,我已将 IEnumerable 转换为 IQueryable ,但它仍然会引发错误。以下是代码:
public static void FilterData(string Query)
{
if((List<MemberMaintenanceData>)HttpContext.Current.Session["Allmembers"] != null)
{
//Get the IEnumerable object colection from session
var data = (List<MemberMaintenanceData>) HttpContext.Current.Session["Allmembers"];
//Convert it to IQueryable
IQueryable<MemberMaintenanceData> queryData = data.AsQueryable();
//This line doesn't compile!!
queryData = queryData.Where(Query);
HttpContext.Current.Session["Allmembers"] = queryData.AsEnumerable().ToList();
}
}
我打算将“a => a.AccountId == 1000”作为查询传递
【问题讨论】: