ORACLE数据库VS2K12中的第一个EF4到EF5:错误0040:类型XXX没有使用命名空间或别名限定

时间:2013-07-04 15:03:08

标签: visual-studio-2012 entity-framework-5 edmx devart ef-database-first

我有一个VS2K12解决方案,其中使用.edmx file dotConnect连接了ORACLE数据库优先7.2.96.0。我有一些uTests像魅力一样对抗DB。

如果我将Entity Framework的版本(从版本4更改为5)并将项目更新为Framework 4.5,则解决方案会进行编译,但uTests会在尝试时失败并显示以下错误获取数据库的上下文:

`System.Data.MetadataException was unhandled by user code
  HResult=-2146232007
  Message=Schema specified is not valid. Errors: 

AlertingData.ssdl(54,6) : error 0040: The Type NVARCHAR2 is not qualified with a namespace or alias. Only primitive types can be used without qualification.

AlertingData.ssdl(57,6) : error 0040: The Type TIMESTAMP WITH LOCAL TIME ZONE is not qualified with a namespace or alias. Only primitive types can be used without qualification.

其中几个。欢迎任何帮助。

1 个答案:

答案 0 :(得分:2)

请在首次使用上下文之前设置“ColumnTypeCasingConventionCompatibility = false”(例如:在部分类的静态构造函数中)或* .config:

<configuration>
  <configSections>
    <section name="Devart.Data.Oracle.Entity" type="Devart.Data.Oracle.Entity.Configuration.OracleEntityProviderConfigurationSection,
      Devart.Data.Oracle.Entity, Version=7.2.96.0, Culture=neutral,
      PublicKeyToken=09af7300eec23701" />
  </configSections>
  <Devart.Data.Oracle.Entity xmlns="http://devart.com/schemas/Devart.Data.Oracle.Entity/1.0">
    <CodeFirstOptions ColumnTypeCasingConventionCompatibility="false"/>
  </Devart.Data.Oracle.Entity>
</configuration>

有关详细信息,请参阅http://www.devart.com/dotconnect/oracle/docs/?CodeFirstOptions.html