Visual Studio 2010 EDMX Designer是否与DevArt dotConnect一起使用?

时间:2012-05-21 18:36:43

标签: .net oracle entity-framework edmx dotconnect

我正在尝试切换模型以使用DevArt dotConnect驱动程序。它实际上已经运行了,但在重新生成模型之后,它似乎已恢复为默认的.NET Oracle驱动程序。

我所做的是在记事本中打开.edmx文件并更改:

<Schema Provider="Oracle.DataAccess.Client" ProviderManifestToken="11.2" ...>

要:

<Schema Provider="Devart.Data.Oracle" ProviderManifestToken="Ora11g" ...>

然而,当我尝试从数据库更新模型时,我得到了数百个类似于:

的错误
  

错误18错误40:类型编号未使用命名空间限定   或别名。只有PrimitiveTypes可以不受限制地使用。

这些发生在如下行:

<Property Name="ROLEID" Type="number" Nullable="false" />

我相信dotConnect驱动程序要我使用.NET原语Decimal而不是Oracle类型number。但是,修复这些错误需要我更改数百行,而且下次更新模型时它会被删除。

我的问题:

内置VS2010设计器是否可以与DevArt dotConnect Oracle驱动程序一起使用?或者是生成使用DevArt设计器的正确语法的唯一方法吗?

1 个答案:

答案 0 :(得分:0)

我很确定我已经找到了问题。

模型已映射到使用Oracle.DataAccess.Client ADO.NET驱动程序而非dotConnect驱动程序的数据源。

我无法找到更改模型的基础数据库驱动程序的好方法,因此我删除了数据源并创建了一个具有相同名称的新数据源。这似乎解决了这个问题,现在数据类型在EDMX文件中正确显示。

我现在有很多其他问题,但我认为这与这个问题无关。