修改 telerik 网格过滤器 LINQ 实体表达式

发布于 2024-10-06 13:36:46 字数 804 浏览 9 评论 0原文

大家好 我正在使用 Telerik ASP.NET MVC2 网格,我需要更改过滤器不区分大小写的方式,因为使用较低方法时会出现数据库错误。 因此,我想创建一个 linq 表达式来测试每种情况的可能性。 (例如“aaa”、“Aaa”、“AaA”等...) 我需要在下面的代码中做到这一点。

提前致谢。

   private static Expression GenerateCaseInsensitiveStringMethodCall(MethodInfo methodInfo, Expression left, Expression right)
    {
      if (methodInfo.IsStatic)
        return  Expression.Call(methodInfo,new[] {  left, right });
      else
        return Expression.Call(left, methodInfo,right);
      /*
      var leftToLower = GenerateToLowerCall(left);
      var rightToLower = GenerateToLowerCall(right);

      if (methodInfo.IsStatic)
      {
        return Expression.Call(methodInfo, new[] { leftToLower, rightToLower });
      }

      return Expression.Call(leftToLower, methodInfo, rightToLower);*/

Hello everybody
I'm using the Telerik ASP.NET MVC2 grid and i need to change the way how the filters are non-case sensitive because the DB bugs when using lower method.
So, i want to create a linq expression that will test every case possibilities. (for example "aaa","Aaa","AaA" etc...)
I need to do that in the following code.

Thank's by advance.

   private static Expression GenerateCaseInsensitiveStringMethodCall(MethodInfo methodInfo, Expression left, Expression right)
    {
      if (methodInfo.IsStatic)
        return  Expression.Call(methodInfo,new[] {  left, right });
      else
        return Expression.Call(left, methodInfo,right);
      /*
      var leftToLower = GenerateToLowerCall(left);
      var rightToLower = GenerateToLowerCall(right);

      if (methodInfo.IsStatic)
      {
        return Expression.Call(methodInfo, new[] { leftToLower, rightToLower });
      }

      return Expression.Call(leftToLower, methodInfo, rightToLower);*/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不爱素颜 2024-10-13 13:36:46

在文件 FilterOperationExtensions.cs 中,

将方法GenerateToLowerCall 更改为仅返回 lifttoEmpty 变量

In file FilterOperationExtensions.cs,

change method GenerateToLowerCall to just return the liftedtoEmpty variable

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文