【发布时间】:2015-01-13 21:57:42
【问题描述】:
我正在使用 LINQ 来查询定义如下的字符串字段:
"RUT" VARCHAR2(12 BYTE) NOT NULL ENABLE
Visual Studio 生成具有以下属性的 Producer 类:
[EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
[DataMemberAttribute()]
public global::System.String RUT
{
get
{
return _RUT;
}
set
{
if (_RUT != value)
{
OnRUTChanging(value);
ReportPropertyChanging("RUT");
_RUT = StructuralObject.SetValidValue(value, false);
ReportPropertyChanged("RUT");
OnRUTChanged();
}
}
}
private global::System.String _RUT;
partial void OnRUTChanging(global::System.String value);
partial void OnRUTChanged();`
我尝试运行以下代码:
var producer = db.Producers.FirstOrDefault(p => p.RUT == rut);
我得到一个例外说
{“ORA-00932:不一致的数据类型:预期 - 得到 CLOB”}
我不明白 CLOB 是如何参与其中的。 有谁愿意解释一下吗?
我的规格:
- Visual Studio 2010
- MVC 4
- Oracle 数据库 10g
- 适用于 Visual Studio 的 Oracle 开发人员工具
【问题讨论】:
-
对确切的错误进行谷歌搜索
-
我做到了。显然其他人收到了错误,但没有找到任何将 varchar2 字段解释为 CLOB 的人。
标签: c# linq visual-studio-2010 asp.net-mvc-4 oracle10g