【发布时间】:2014-04-30 11:54:59
【问题描述】:
我正在尝试使用其他搜索条件扩展我的 linq 查询,以通过发送 List<Listitem> 到函数进行处理来过滤数据。该列表可以包含 1 个或多个项目,目标是检索符合任何条件的所有项目。
由于我向函数发送了几个搜索条件,因此目标是使过滤结果更准确,我发送给过滤器的信息越多。如果一个或多个条件为空,则过滤器将获得不太准确的结果。
每次执行以下代码时都会引发异常,我无法弄清楚如何解决 using 语句以包含 List<ListItem>。提前感谢所有帮助!
例外:Unable to create a constant value of type 'System.Web.UI.WebControls.ListItem'. Only primitive types or enumeration types are supported in this context.
using (var db = new DL.ENTS())
{
List<DL.PRODUCTS> products =
(from a in db.PRODUCTS
where (description == null || description == "" ||
a.DESCRIPTION.Contains(description)) &&
(active == null || active == "" || a.ACTIVE.Equals(active, StringComparison.CurrentCultureIgnoreCase)) &&
(mID == null || mID == "" || a.MEDIA_ID == mID) &&
(mID == null || objTypes.Any(s => s.Value == a.OBJECTS)) //Exception here!
select a).ToList<DL.PRODUCTS>();
return products;
}
【问题讨论】:
标签: c# linq linq-to-entities