ORA-00923 dot net core devart provider FirstOrDefault() 查询错误



我正在开发一个.net核心Web API,当我尝试在登录操作上获取一些数据时,它使用数据库oracle和数据提供程序devart,我遇到了这个问题

{"ORA-00923: FROM keyword not found where expected"}

我的代码删除捕获在此行上引发异常

var result = db.tables.Where(x => x.code== userParams.code&& x.password == userParams.Password).FirstOrDefault();

我改变了在哪里功能之后 我试过了

.First()
.SingleOrDefault()
.FirstOrDefault()

另外,我当时尝试过,但我认为此功能不合逻辑

.SingleOrDefault()
.Take(1)

我的版本

.net core 3.1
OracleDB version 11g
EFCore Devart 
EF 3.1

任何人都可以知道这个问题吗?

谢谢你@Devart我更新了这个版本的Devart.Data.Oracle.EFCore版本。它现在工作:) https://www.nuget.org/packages/Devart.Data.Oracle.EFCore/9.10.909

如果 SingleOrDefault 正常工作,我会像这样重新编辑您的查询

var result = db.tables.SingleOrDefault(x => x.code == userParams.code && x.password == userParams.Password);

通过这样做,我也认为您跳过了不必要的子查询。

最新更新