首页 > 解决方案 > C# Entity Framework Core - 错误的 .ToList()“自动选择”到 Oracle 数据库

问题描述

在我的应用程序中,我使用 a 打开了与 Oracle 的连接,Oracle.ManagedDataAccess.Client并将其用于以下代码中的 Entity Framework Core:

optionsBuilder.UseOracle(connection)

当我调用这样的东西时,我的问题是:

txtStop_Trading_Message.Text = context.GlobalParam.ToList().First().Stop_Trading_Message;

我收到一个错误:

执行 DbCommand 失败 (51ms) [Parameters=[], CommandType='Text', CommandTimeout='0']
SELECT "g"."ID", "g"."DChange", "g"."Deleted", " g"."Is_Stop_Trading", "g"."Stop_Trading_Message", "g"."Uzi_ID"
FROM "PROSTREAM"."Global_param" "g"
Oracle.ManagedDataAccess.Client.OracleException (0x80004005): ORA-00942: 表或视图不存在

但是这段代码工作正常:

txtStop_Trading_Message.Text = context.GlobalParam.FromSql("SELECT * FROM PROSTREAM.Global_param g FETCH FIRST 1 ROWS ONLY").ToList().First().Stop_Trading_Message;

所以功能的EF“自动选择”.ToList()不起作用,因为在选择它的"字符时,知道为什么吗?

当我选择并删除 chars"时,选择就可以了,并且可以使用.FromSql()函数,也在 SQL Developer 等中......

谢谢...

标签: oracleentity-framework-core

解决方案


推荐阅读