c# - 动态 LINQ - 有 .NET 4 版本吗?

标签 c# linq dynamic-linq linq-expressions

我希望将 LINQ 用于一些搜索例程,并希望有一些动态的 where 子句。因此,例如,如果用户想要按城市搜索或按州搜索,我将进行动态 LINQ Where<> 调用,而不是创建两个强类型的 LINQ 表达式,然后根据用户想要搜索的方式使用适当的表达式.

所以我想这样做:

String criteria="p.City='Pittsburgh'";  //or "p.State='PA'"
personData.Where(criteria)

代替

personData.Where(p => p.City=="Pittsburgh");

personData.Where(p => p.State=="PA");

我遇到了一个 blog post Scott Guthrie 在 Visual Studio 2008 示例中谈论动态 LINQ。这似乎可以满足我的要求,但我的问题是:

  1. Microsoft 是否支持此示例库?
  2. Scott Guthrie 的文章是关于 VS2008 (.NET 3.5) 的。 .NET 4 有更好的选择吗?也许与 .NET 4 一起发布的东西可以完成同样的事情(或非常接近的事情)?

提前致谢!

最佳答案

您可能想看看 PredicateBuilder

关于c# - 动态 LINQ - 有 .NET 4 版本吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5163147/

相关文章:

c# - Windows 8 GridView 最大项目数(根据屏幕大小)

c# - 通过.net使用java web服务-数据不一致

c# - 从表达式创建动态 Linq select 子句

c# - 将 List 转换为 typeof UnderlyingSystemType

c# - Azure Functions 事件中心绑定(bind)重试

C#.net-|| OR 运算符不正常。似乎正在作为 AND

xml - 如何按属性值对 LINQ C# 中的 XML 进行排序?还有MVC

c# - 避免在 Entity Framework 中重复投影代码

linq - MVC3 Razor @Html.DropDownListFor

c# - 即使在显式包含之后,导航属性的 EF Core "InvalidOperationException: Include has been used on non entity queryable"