当我将Linq-to-sql查询绑定到datagridview(在其间使用BindingSource)时,默认情况下列可以排序.但是,布尔类型似乎不是这种情况.对于这些,datagridview使用Checkbox列,但是当我点击标题时没有任何反应.解决任何人?
Contains在Linq-to-objects上使用Dynamic Linq时,搜索区分大小写.我希望能够搜索不区分大小写(如Linq-to-sql,因为SQL Server默认执行此操作).
就像是:
this.someQuery = this.someQuery.Where(field + ".Contains(@0, true)", strValue);
Run Code Online (Sandbox Code Playgroud)
where true表示:caseinsensitive = true,就像System.String.Contains提供的扩展之一.虽然我System.String默认情况下不能使用动态Linq 扩展.
我正在创建一个可以接收任何Linq查询的通用表单(C#).在这种形式中,我希望能够添加过滤器(WHERE子句).对于像"=",">","喜欢"等操作员,我可以做类似的事情IQueryable.Where(someFieldname + "> @0", someCriteria).但是,当我想能够做相当于T-sql"IN"时,我完全迷失了.我已经搜索了几个小时,但找不到实现它的方法.
在考虑它时,应该可行的方法是将IN子句的值放在字符串数组或其他简单的字符串列表中.然后使用基本查询加入此列表.但是,当基本查询可以是任何查询时,如何加入这两个?
示例:假设我的基本查询类似于:
IQueryable<Object> q = from a in db.Adresses
select new { a.Street, a.HouseNr };
Run Code Online (Sandbox Code Playgroud)
在我希望能够像这样过滤HouseNr的形式:Where HouseNr IN(1,3,5)数字(1,3,5)在字符串数组(或任何其他字符串列表)中可用.
我怎么能实现这一点,知道基本查询可以是什么?