Ich hoffe, die folgenden Schritte liefern Ihnen das richtige Ergebnis.
Um System.Data.OracleClient durch Oracle.DataAccess.Client zu ersetzen; und Oracle.DataAccess.Types
Laden Sie die neueste Version der Microsoft Enterprise Library Version 3.1 herunter und installieren Sie sie. Sie finden sie hier:- http://msdn2.microsoft.com/en-us/library/aa480453.aspx
Laden Sie Oracle ODP.Net von der Oracle-Website herunter und installieren Sie es. Ihre DLL-Datei sollte sich unter :-C:\oracle\product\11.1.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll
Wenn Sie aufgefordert werden, die Quelle zu installieren, tun Sie dies, indem Sie das Kontrollkästchen aktivieren.
Wenn Sie dies nicht getan haben, führen Sie die MSI-Datei unter folgendem Pfad aus:C:\Programme\Microsoft Enterprise Library 3.1 - Mai 2007\src
Der Code für die Bibliothek wird unter folgendem Pfad gespeichert:C:\EntLib3Src\App Blocks
Erstellen Sie eine Sicherungskopie des ursprünglichen src-Ordners, falls Sie sie später benötigen - C:\EntLib3Src\App Blocks\Src
Öffnen Sie die Lösungsdatei EnterpriseLibrary.sln und rufen Sie das Datenprojekt unter Data Access Application Block
aufFügen Sie dem Datenprojekt eine Oracle.DataAccess.dll-Referenz hinzu. Ihre DLL-Datei sollte sich in:- C:\oracle\product\11.1.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll
befindenSuchen und ersetzen Sie Folgendes [Stattdessen können Sie die aktualisierte DLL herunterladen und verwenden, die diesem Artikel beigefügt ist]
Datei:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Datei:- C:\EntLib3Src\App Blocks\Src\Data\DatabaseConfigurationView.cs
Datei:- C :\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDataReaderWrapper.cs
Suchen:- using System.Data.OracleClient;
Ersetzen durch:- using Oracle.DataAccess.Client; using Oracle.DataAccess.Types;
Datei:– C:\EntLib3Src\App Blocks\Src\Data\Configuration\DbProviderMapping.cs Klasse:– DbProviderMapping
Suchen:- System.Data.OracleClient
Ersetzen durch:- Oracle.DataAccess.Client
Datei:- C:\EntLib3Src\App Blocks\Src\Data\Configuration\Manageability\ConnectionStringsManageabilityProvider.cs
Methode:- AddAdministrativeTemplateDirectives
Finden:- System.Data.OracleClient
Ersetzen durch:- Oracle.DataAccess.Client
Datei:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Methode:- AddParameter
Find :- public void AddParameter(OracleCommand command, string name, OracleType oracleType, int size, ParameterDirection direction, bool nullable, byte precision, byte scale, string sourceColumn, DataRowVersion sourceVersion, object value)
Ersetzen durch:- public void AddParameter(OracleCommand command, string name, OracleDbType oracleType, int size, ParameterDirection direction, bool nullable, byte precision, byte scale, string sourceColumn, DataRowVersion sourceVersion, object value)
Grund:- OracleType wurde durch OracleDbType als dritten Parameter als Typname in der odp.net-API ersetzt
Datei:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Entfernen:- [OraclePermission(SecurityAction.Demand)]
-
Ich habe keine Ahnung, was das bewirkt, wenn jemand dies tut, informieren Sie sich bitte über die Feedback-Sitzung
Datei:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Suchen:- OracleType.Raw
Ersetzen durch:- OracleDbType.Raw
Suchen:- param.OracleType
Ersetzen durch:- param.OracleDbType
Suchen:- OracleType.Cursor
Ersetzen durch:- OracleDbType.RefCursor
Suchen:- parameter.OracleType
Ersetzen durch:- parameter.OracleDbType
Kompilieren Sie jetzt und wenn Sie einen Fehler erhalten, geben Sie die folgende Warnung als Fehler ein:XML-Kommentar an - Entfernen Sie den hervorgehobenen Fehlerinhalt / ersetzen Sie ihn durch einen geeigneten Kommentar. Hoffentlich sollte es jetzt gut kompilieren.
Jetzt kann die DLL, die durch Kompilieren des obigen Projekts generiert wurde, sowohl für SqlServer als auch für Oracle [ODP.Net]
verwendet werden