小编Rol*_*ain的帖子

C#Datagridview不对Checkbox列进行排序

当我将Linq-to-sql查询绑定到datagridview(在其间使用BindingSource)时,默认情况下列可以排序.但是,布尔类型似乎不是这种情况.对于这些,datagridview使用Checkbox列,但是当我点击标题时没有任何反应.解决任何人?

c# sorting checkbox datagridview

10
推荐指数
2
解决办法
5193
查看次数

不区分大小写包含动态Linq

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 linq-to-objects contains

7
推荐指数
1
解决办法
5565
查看次数

如何使用动态Linq实现tsql"IN"等效

我正在创建一个可以接收任何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)在字符串数组(或任何其他字符串列表)中可用.

我怎么能实现这一点,知道基本查询可以是什么?

c# linq dynamic linq-to-sql

5
推荐指数
1
解决办法
1458
查看次数