Dank dem Gespräch mit Elvis letzte Woche habe ich eine kleine Applikation versucht auf DbProviderFactory und die System.Data Interface umzustellen.
Soweit, sogut, aber beim Starten der Datenbankverbindung geht mir da noch was in die Hose.
Folgender Fehler tritt auf:
Zitat:
Column 'InvariantName' is constrained to be unique. Value 'CoreLab.Oracle' is already present.
und zwar an genau der Stelle, an der ich die Factory holen will:
Code:
_factory = DbProviderFactories.GetFactory(Properties.Settings.Default.DefaultProviderName); // <-- hier knallts
_DbConnection = _factory.CreateConnection();
Hier der Auszug aus meiner App.Config:
XML-Code:
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="system.data" type="System.Data.Common.DbProviderFactoriesConfigurationHandler, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
</sectionGroup>
</configSections>
<applicationSettings>
<ASTA.Properties.Settings>
<setting name="DefaultProviderName" serializeAs="String">
<value>CoreLab.Oracle</value>
</setting>
</ASTA.Properties.Settings>
</applicationSettings>
<system.data>
<DbProviderFactories>
<add name="Corelabs Oracle Provider for .NET"
invariant="CoreLab.Oracle"
description="Corelab Orlace Provider for .NET"
type=" CoreLab.Oracle.OraDirectFactory, CoreLab.Oracle, Version=3.50.9.0, Culture=neutral, PublicKeyToken=09af7300eec23701" />
</DbProviderFactories>
</system.data>
Hab ich was übersehen oder vergessen?