我正在将项目从EntLib 4.1升级到EntLib 5.我浏览了迁移指南,更改了所有引用,并更新了所有配置文件以指向EntLib 5 。所有工作正常接受Oracle数据库访问。随着配置文件:使用Oracle.DataAccess.Client升级EntLib 4.1到5
<configuration>
<configSections>
<section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true" />
</configSections>
<dataConfiguration defaultDatabase="prod">
<providerMappings>
<add databaseType="Microsoft.Practices.EnterpriseLibrary.Data.Oracle.OracleDatabase, Microsoft.Practices.EnterpriseLibrary.Data"
name="Oracle.DataAccess.Client" />
</providerMappings>
</dataConfiguration>
<connectionStrings>
<add name="prod" connectionString="Data Source=dev;User Id=dev;Password=dev;"
providerName="Oracle.DataAccess.Client" />
</connectionStrings>
</configuration>
与4.1所有呼叫致力于DatabaseFactory.CreateDatabase()
失败:
System.InvalidOperationException: The type Database cannot be constructed. You must configure the container to supply this value.
如果我与微软System.Data.Oracleclient
这一切再次工作更换Oracle.DataAccess.Client
,但并未充满ODP的。净可爱。有谁知道如何让它与EntLib 5一起工作?
干杯, MLK