早上好,我的应用程序使用oracle.manageddataaccess.client,通过Nuget安装oracle.managedDataAccess时,在我的web.config中创建了一个引用,如下所示:
<configSections>
<section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess,
Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342" />
</configSections>
要运行我的应用程序,我需要在machine.config文件中使用相同的部分。 (Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ machine.config),下面的machine.config文件:
问题是,每当我需要使用另一个版本的oracle运行另一个应用程序时,都会出现重复键错误,因为在web.config中配置了一个版本,而在machine.config中,该节也配置了另一个版本。版。始终需要手动编辑文件machine.config并根据web.config的版本设置版本。
我要解决的问题是:
allowOverride="true"
<clear />
元素(不成功)我发现在不需要放置手动版本的其他计算机上,machine.config使用oracle.dataaccess.client
部分,因此我研究是由于使用了非托管的odp.net驱动程序,将我的部分更改为这也行不通。
是否有任何方法可以覆盖此部分?或使用oracle.dataaccess.client
解决此问题。
答案 0 :(得分:1)
我通过在web.config中使用以下命令使其工作:
<configSections>
<section name="new.oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.19.1, Culture=neutral, PublicKeyToken=89b483f429c47342" />
</configSections>
然后使用新的配置部分:
<new.oracle.manageddataaccess.client>
<version number="*">
<!--Oracle configuration settings-->
</version>
</new.oracle.manageddataaccess.client>