Visual studio 2010 VS2010将数据集转换为ODP.net

Visual studio 2010 VS2010将数据集转换为ODP.net,visual-studio-2010,oracle,dataset,odp.net,odac,Visual Studio 2010,Oracle,Dataset,Odp.net,Odac,我们在VS2010中有一个解决方案。在一些项目中,我们有一个数据集。所有数据集都包含1个以上的DataTables和TableAdapter。 该解决方案是使用SYSTEM.DATA.ORACLECLIENT开发的。 现在我们要转换为ODP.net,必须使用ORACLE.DATAACCESS.CLIENT。 我们在论坛上讨论了如何做到这一点。 因此,我们已经做了: -删除项目级别上的“SYSTEM.DATA.ORACLECLIENT”引用。 -添加了引用“ORACLE.DATAACCESS”。

我们在VS2010中有一个解决方案。在一些项目中,我们有一个数据集。所有数据集都包含1个以上的DataTables和TableAdapter。 该解决方案是使用SYSTEM.DATA.ORACLECLIENT开发的。 现在我们要转换为ODP.net,必须使用ORACLE.DATAACCESS.CLIENT。 我们在论坛上讨论了如何做到这一点。 因此,我们已经做了: -删除项目级别上的“SYSTEM.DATA.ORACLECLIENT”引用。 -添加了引用“ORACLE.DATAACCESS”。 -所有“使用SYSTEM.DATA.ORACLECLIENT;”更改为“使用Oracle.DataAccess.Client;” -在某些连接字符串中,我们删除了“Unicode=true” -我们还没有在OracleCommand中添加BindingName=true -我们还没有对VarChar、VarNumeric等数据库类型进行任何更改

我没有得到构建错误,但在运行解决方案时,我得到一个关于“值不在预期范围内”的错误

现在我觉得我的数据集并没有100%转换成ODP.net。 所以我需要一些帮助

如何检查或将数据集转换为OPD.net(Oracle.DataAccess.Client)? 那么像“分层更新”、“DeleteDBDirectMethods”之类的属性呢。。。 数据集由4个文件表示:.cs、Designer.cs、.xsc和.xss。 这些文件中的代码似乎没有问题:我的意思是我看到了Oracle.DataAccess.Client


谁能帮助我?

在将数据集(XSD)从System.Data.OracleClient转换为Oracle.DataAccess.Client后,我们也遇到了这个问题

问题是数据集设计器仍然使用“Number”作为ProviderType的数据类型。Oracle不支持“数字”数据类型。我们必须为每个表适配器和表适配器中每个查询的每个参数集合更改每个数据集中的ProviderType。我们使用“Decimal”作为ProviderType,它似乎工作正常。不要忘记检查自动生成的“选择”、“更新”和“删除”查询

我们也没有更改BindByName=true


希望这会有所帮助。

我遵循了下列建议:

我试图从使用System.Data.OracleClient适配器转换为使用ODP.NET,所以我直接进入数据集xsd,将提供程序更改为指向Oracle.DataAccess.Client,它使用正确的提供程序重新生成代码

这对我很有用-使用XML(文本)编辑器打开XSD,然后找到以下行:


将其更改为:

<Connection ... Provider="Oracle.ManagedDataAccess.Client">

重建时,
.Designer.cs
文件中的所有代码都将更新为使用
Oracle.ManagedDataAccess

<Connection ... Provider="Oracle.ManagedDataAccess.Client">