Oracle.ManagedDataAccess.EntityFramework 6.122.1.0 库用于从 MVC ASP.Net 应用程序访问 Oracle 数据库。截至 2017 年 11 月 14 日,它是来自 NuGet 的最新库版本
protected override Expression<Func<MyEntity, object>> getSelector()
{
return m => new
{
ID = m.ID,
NAME = m.Name,
LONGSTRING = "Blah-blah-blah-blah...some thousands characters..." +
m.ID + "blah-blah...blah"
};
}
protected override ProblemMethod()
{
var result = db.MyEntity.Select(getSelector()).ToList();
}
有问题。发生这种情况是因为很长的字符串(几千个字符)被连接到 LONGSTRING
中,并且执行Select
throw 下一个异常。
ORA-00932: 不一致的数据类型: "'expected CLOB got CHAR"
我的班级需要得到Expression
最GetSelector()
重要的。如何克服错误或绕过它?绕过的一种方法是强制 EFSelect
在客户端上执行。怎么做?
PS:同样的问题在俄语中。
更新
我应该展示 MyEntity
CREATE TABLE MyEntity (ID NUMBER(10), Name VARCHAR2(100));