本文由 比特飞 原创发布,欢迎大家踊跃转载。

转载请注明本文地址:“Mvc.ExceptionHandling.AbpExceptionFilter – Processing of the LINQ expression ‘xxx’ by ‘NavigationExpandingExpressionVisitor’ failed. This may indicate either a bug or a limitation in EF Core.”的解决方案 | .Net中文网

描述

最近在使用 efcore 连接 mysql 数据库进行排序时,遇到如下的报错信息:

ERROR 2020-06-08 20:44:00,617 [4 ] Mvc.ExceptionHandling.AbpExceptionFilter - Processing of the LINQ expression 'DbSet<xxx>.OrderBy( => .Id).Reverse()' by 'NavigationExpandingExpressionVisitor' failed. This may indicate either a bug or a limitation in EF Core. See https://go.microsoft.com/fwlink/?linkid=2101433 for more detailed information.System.InvalidOperationException: Processing of the LINQ expression 'DbSet<xxx>.OrderBy( => .Id).Reverse()' by 'NavigationExpandingExpressionVisitor' failed. This may indicate either a bug or a limitation in EF Core. See https://go.microsoft.com/fwlink/?linkid=2101433 for more detailed information.at Microsoft.EntityFrameworkCore.Query.Internal.NavigationExpandingExpressionVisitor.VisitMethodCall(MethodCallExpression methodCallExpression)at System.Linq.Expressions.MethodCallExpression.Accept(ExpressionVisitor visitor)at Microsoft.EntityFrameworkCore.Query.Internal.NavigationExpandingExpressionVisitor.VisitMethodCall(MethodCallExpression methodCallExpression)at System.Linq.Expressions.MethodCallExpression.Accept(ExpressionVisitor visitor)at Microsoft.EntityFrameworkCore.Query.Internal.NavigationExpandingExpressionVisitor.VisitMethodCall(MethodCallExpression methodCallExpression)at System.Linq.Expressions.MethodCallExpression.Accept(ExpressionVisitor visitor)at Microsoft.EntityFrameworkCore.Query.Internal.NavigationExpandingExpressionVisitor.Expand(Expression query)at Microsoft.EntityFrameworkCore.Query.QueryTranslationPreprocessor.Process(Expression query)at Microsoft.EntityFrameworkCore.Query.QueryCompilationContext.CreateQueryExecutor[TResult](Expression query)at Microsoft.EntityFrameworkCore.Storage.Database.CompileQuery[TResult](Expression query, Boolean async)at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.CompileQueryCore[TResult](IDatabase database, Expression query, IModel model, Boolean async)at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.<>c__DisplayClass12_0<code data-enlighter-language="generic" class="EnlighterJSRAW">1.<ExecuteAsync>b__0()at Microsoft.EntityFrameworkCore.Query.Internal.CompiledQueryCache.GetOrAddQueryCore[TFunc](Object cacheKey, Func</code>1 compiler)at Microsoft.EntityFrameworkCore.Query.Internal.CompiledQueryCache.GetOrAddQuery[TResult](Object cacheKey, Func<code data-enlighter-language="generic" class="EnlighterJSRAW">1 compiler)at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteAsync[TResult](Expression query, CancellationToken cancellationToken)at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryProvider.ExecuteAsync[TResult](Expression expression, CancellationToken cancellationToken)at Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryable</code>1.GetAsyncEnumerator(CancellationToken cancellationToken)at System.Runtime.CompilerServices.ConfiguredCancelableAsyncEnumerable<code data-enlighter-language="generic" class="EnlighterJSRAW">1.GetAsyncEnumerator()at Microsoft.EntityFrameworkCore.EntityFrameworkQueryableExtensions.ToListAsync[TSource](IQueryable</code>1 source, CancellationToken cancellationToken)at lambda_method(Closure , Object )at Microsoft.Extensions.Internal.ObjectMethodExecutorAwaitable.Awaiter.GetResult()at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()--- End of stack trace from previous location where exception was thrown ---at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextExceptionFilterAsync>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)

解决

发生这个问题的原因是配合 OrderBy 使用 Queryable.Reverse<TSource>(IQueryable<TSource>) 方法尝试获取倒序结果集时,抛出了一个“无效的操作”异常。解决方法就是直接使用 OrderByDescending。

本文由 比特飞 原创发布,欢迎大家踊跃转载。

转载请注明本文地址:“Mvc.ExceptionHandling.AbpExceptionFilter – Processing of the LINQ expression ‘xxx’ by ‘NavigationExpandingExpressionVisitor’ failed. This may indicate either a bug or a limitation in EF Core.”的解决方案 | .Net中文网

“Mvc.ExceptionHandling.AbpExceptionFilter – Processing of the LINQ expression ‘xxx’ by ‘NavigationEx相关推荐

  1. 跟我学MVC系列(Repository模式、LINQ、EF、IOC框架Castle、JQuery、AJAX)(六)(应用IOC模式)...

    前五篇已经把Models 介绍完啦,从今天开始我们要介绍"V"&"C"啦.现在我们还是从MVC的定义说起,其实MVC最大的好处就是M层(脱离V与C)可以 ...

  2. C# linq Expression left join如何使用

    eg: 注意:on 前后要保持字段名一致 var bleftQuery = from f in bFamiliesjoin a in bAudits on new{Id=f.Id,DCYId=f.Mo ...

  3. MVC发布出现:未能将文件bin\xxx.xml 复制到 obj\Release\PackageTmp\bin\xxx.xml,未能找到文件

    之前写的项目好好的,也可以发布,然后今天要发布MVC项目,一直报错,报下面这个错误 莫名其妙搞了好久,没搜到合理的解决方案,结果就只能瞎搞了.  突然想起了,我前几天犯贱把项目根目录下的bin文件夹和 ...

  4. Tomcat 7 'javax.el.ELException' 的解决方式(failed to parse the expression [${xxx}])

    Tomcat 7 'javax.el.ELException' 的解决方式 tomcat 7对EL表达式的语法要求比较严格,例如"${owner.new}"因包含关键字new就会导 ...

  5. 【Flink】Flink Group by 操作 报错 Expression xxx is not being grouped

    1.背景 看到siddhi 语法是可以这样写的 from stream [id="xx"] #window.timeBatch(6 sec) select aa,bb,cc gro ...

  6. Flowable Unknown property used in expression: xxx

    在使用flowable某个用户任务属性:[跳过表达式]功能时,设置了表达式为${noCurrentUser == true},保存流程定义没有问题,在启动流程实例时,发生报错: 因为在启动实例过程中发 ...

  7. 比特飞解决方案大汇总,你的贴身家教

    该文章的最新版本已迁移至个人博客[比特飞],单击链接:.Net中文网解决方案大汇总,你的贴身家教 | .Net中文网. 概述 本系列文章将会向大家介绍本人实际开发过程中所遇的解决方案大汇总,旨在抛砖引 ...

  8. 在Abp 使用 阿里云的oss

    代码部分: 1.新建一个控制台程序 2.nuget安装包和项目引用.Core 3.AbpSetting表 4.修改配置 代码: --AppSettingProvider.cs // AppSettin ...

  9. Abp vNext异常处理的缺陷/改造方案

    之前吐槽Abp的用户/租户管理模块!今天我又来了,这次我给Abp官方repo提了一个issue. 目前Website使用Abp vNext开发,免不了要全局处理异常.提示服务器异常信息. 1. Abp ...

最新文章

  1. 亚里士多德千年前的猜想,被这群MIT本科生向前推进了一步
  2. 使用IDEA搭建第一个SpringBoot程序
  3. matlab 学习之常用函数2
  4. Python的单例模式
  5. 智能物流给力零售业跨越式发展
  6. ThinkPHP学生管理系统
  7. textarea高度自适应且不出现滚动条
  8. java可视化编程软件有哪些_几款Java开发者必备常用的工具,准点下班不在话下...
  9. matlab2017b 破解
  10. perl 5.10.0安装包下载
  11. [OpenAirInterface实战-16] :OAI 软件无线电USRP X300/X310硬件详解
  12. 使用FFmpeg转录网络直播流
  13. Linux 电源管理 - Linux regulator framework
  14. Java中的Enum的简单使用
  15. halcon印章文字提取
  16. 计算机组成原理之MIPS汇编:冒泡排序
  17. 小米air2se耳机只有一边有声音怎么办_不到200元 小米蓝牙耳机Air2 SE是真香党的选择吗?...
  18. 11个你可能不知道的Python库
  19. 如何在Tableau Desktop中创建自定义调色板 - 优阅达
  20. 洛谷P1830 轰炸

热门文章

  1. 机器学习速成课程 | 练习 | Google Development——编程练习:Pandas 简介
  2. 【AI视野·今日NLP 自然语言处理论文速览 第二十期】Thu, 8 Jul 2021
  3. 【深度学习框架】Tensorflow Session.run()函数的进一步理解
  4. Java—System类和Runtime类
  5. 了解Java的发展史
  6. 窗体常用属性的演练 c#
  7. flask-配置的设置-三种配置的实现方法
  8. 三十、MySQL 处理重复数据
  9. 轻雨物联网解决方案:农业物联网的市场前景分析
  10. jQuery Mobile中jQuery.mobile.changePage方法使用详解