Telerik RadGrid中的LINQ过滤器问题

时间:2010-09-15 09:32:23

标签: linq parsing filter telerik radgrid

使用Telerik RadGrid时遇到问题。 当我在数据列上应用过滤器时,我将过滤器表达式用作Linq表达式。 所以(服务器端)我在NeedDataSource处理程序中使用Dynamic Linq(来自MIcrosoft LINQ示例)解析它。 问题是,当我将“Start With”指定为过滤器时,我会收到以下“Linq表达式”:

(iif(Name == null, "", Name).ToString().StartsWith("A"))

什么是“iif”????什么对应“iif”???? 用法很明显:处理空值....

奇怪的是,当我在网格上应用过滤器时,从网络服务而不是从服务器端回调加载数据,所有工作和这个问题都没有提出。 两种方式,两种解析功能,不仅是常见的一种。

有什么想法吗?提前致谢

1 个答案:

答案 0 :(得分:0)

在动态LINQ中iif(x,y,z)是三元的另一种语法if x ? y : z,同名是used in VB for some time ("Immediate IF")

在这种情况下,它看起来像null-coalescing operator ??,但似乎Dynamic LINQ不支持

(Name ?? string.Empty).ToString().StartsWith("A")

也许尝试用三元符号替换iif?你能澄清一下发生的确切错误是什么吗?