当前位置: 首页 > news >正文

EFcore8和Sql Server 2014冲突

项目升级到EFCore8之后,所有的Contains方法都报错

报错的linq语句示例:

_db.SysModules.Where(x => moduleIds.Contains(x.Id)).AsNoTracking().ToListAsync()

用log4net记录的报错内容如下

ERROR 关键字 'WITH' 附近有语法错误。 关键字 'with' 附近有语法错误。如果此语句是公用表表达式、xmlnamespaces 子句或者更改跟踪上下文子句,那么前一个语句必须以分号结尾。

这是因为EFCore版本太高,SqlServer版本太低。

解决方法:

1、升级SqlServer

2、在DbContext配置项加上以下代码

optionsBuilder.LogTo(Console.WriteLine, LogLevel.Information).UseSqlServer(sqlStr, o => o.UseCompatibilityLevel(120)); 

其中最关键的是o => o.UseCompatibilityLevel(120)

可以让EFCore和低版本SqlServer兼容

相关文章:

  • WebAssembly 及 HTML Streaming:重塑前端性能与用户体验
  • 【Doris基础】Apache Doris 基本架构深度解析:从存储到查询的完整技术演进
  • 无人机分布式协同算法解析!
  • 考研系列-操作系统:第二章、进程与线程
  • Screen 连接远程服务器(Ubuntu)
  • 视觉中国:镜头下的中国发展图景
  • BGP实验报告
  • 深入理解JavaScript设计模式之call,apply,this
  • go实现定时任务
  • CPO-BP+MOPSO,冠豪猪优化BP神经网络+多目标粒子群算法!(Matlab源码)
  • 深入浅出Nacos:微服务架构中的服务发现与配置管理利器
  • 5.28 后端面经
  • 《深入解析UART协议及其硬件实现》-- 第二篇:UART硬件架构设计与FPGA实现
  • Golang分布式系统开发实践指南
  • MySQL问题:MySQL中主要的锁都有啥?
  • MySQL 默认的隔离级别解析
  • 工业控制核心引擎高性能MCU——MM32F5370
  • 贪心算法求解汽车加油问题
  • 【数据分析】Matplotlib+Pandas+Seaborn绘图
  • DDS通信中间件——DDS-TSN规范
  • 淘宝客网站模板下载/引流推广
  • 网站选择城市怎么做/海阳seo排名优化培训
  • 建站abc口碑/外链代发软件
  • 机构改革后政府网站建设方案/排名第一的玉米品种
  • 无为县做互联网网站/百度推广销售
  • 凤阳做网站/交换友情链接的网站标准是什么