Oracle 11g的ODP.NET 12c问题

时间:2017-05-19 19:07:50

标签: c# oracle entity-framework-6 odp.net

我正在使用Oracle 12c和ODP.NET托管驱动程序12c以及实体框架6开发实体框架应用程序。

所有应用程序在Oracle 12c版本中运行良好,但我们有一个客户使用Oracle 11g版本。在这个客户中,当在11g数据库中存储数字(8)值时,我有以下问题:

“System.Int32”类型的商店生成的值无法转换为“Model.ALARMS”类型成员“ALARMID”所需的“System.Int16”类型的值。

我尝试编辑我的模型mannualy将我的AlarmID字段设置为Int32(当前为Int16)并且此错误停止,但存储在数据库中的值变为负值。回到Int16,上面的问题仍然存在。

我搜索了Oracle论坛,但没有任何回答我这个问题。

有人有这个问题之王吗?

由于

1 个答案:

答案 0 :(得分:0)

好了,问题解决了!

我在Nuget包中更新了ODP.NET托管驱动程序,并且能够为我的字段输入新的EDM映射。

在我的app.config中,我添加了这一行:

Null Pointer Exception

这解决了两个Oracle版本中的强制转换错误。

关于这个:

  

我尝试编辑我的模型mannualy将我的AlarmID字段设置为Int32   (当前为Int16)并且此错误停止,但存储在该值中   数据库成为负值。回到Int16问题   以上持续存在。

这是我在我的代码中所做的错误演员。我的坏!