Ik hoop dat de volgende stappen je het juiste resultaat zullen geven.
Om System.Data.OracleClient te vervangen door Oracle.DataAccess.Client; en Oracle.DataAccess.Types
Download en installeer de nieuwste versie van Microsoft Enterprise Library ver 3.1 Kan hier worden gevonden:- http://msdn2.microsoft.com/en-us/library/aa480453.aspx
Download en installeer Oracle ODP.Net van de Oracle-website. Uw DLL-bestand moet zich bevinden in:-C:\oracle\product\11.1.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll
Wanneer u wordt gevraagd om de broncode te installeren, doet u dit door het selectievakje te gebruiken.
Als u de msi niet hebt uitgevoerd op het volgende pad C:\Program Files\Microsoft Enterprise Library 3.1 - May 2007\src
De code voor de bibliotheek wordt opgeslagen op het volgende pad C:\EntLib3Src\App Blocks
Maak een back-up van de originele src-map voor het geval je ze later nodig hebt - C:\EntLib3Src\App Blocks\Src
Open het oplossingsbestand EnterpriseLibrary.sln En ga naar het dataproject onder Data Access Application Block
Voeg Oracle.DataAccess.dll Reference toe aan het Data Project. Uw DLL-bestand moet zich bevinden in:- C:\oracle\product\11.1.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll
Zoek en vervang het volgende [U kunt in plaats daarvan de bijgewerkte DLL downloaden en gebruiken die bij dit artikel is gevoegd]
Bestand :- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Bestand:- C:\EntLib3Src\App Blocks\Src\Data\DatabaseConfigurationView.cs
Bestand:- C :\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDataReaderWrapper.cs
Zoek :- using System.Data.OracleClient;
Vervangen door:- using Oracle.DataAccess.Client; using Oracle.DataAccess.Types;
Bestand :- C:\EntLib3Src\App Blocks\Src\Data\Configuration\DbProviderMapping.cs Class:- DbProviderMapping
Zoek:- System.Data.OracleClient
Vervangen door:- Oracle.DataAccess.Client
Bestand:- C:\EntLib3Src\App Blocks\Src\Data\Configuration\Manageability\ConnectionStringsManageabilityProvider.cs
Methode:- AddAdministrativeTemplateDirectives
Vind:- System.Data.OracleClient
Vervangen door:- Oracle.DataAccess.Client
Bestand:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Methode:- AddParameter
Zoek:- 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)
Vervang door:- 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)
Reden:- OracleType vervangen door OracleDbType als derde parameter, aangezien de typenaam in de odp.net API
Bestand:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Verwijderen:- [OraclePermission(SecurityAction.Demand)]
-
Heb je geen idee wat dat doet als iemand dat wel doet, geef dan een korte briefing over de feedbacksessie
Bestand:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Find:- OracleType.Raw
Vervangen door:- OracleDbType.Raw
Zoek:- param.OracleType
Vervangen door:- param.OracleDbType
Zoek:- OracleType.Cursor
Vervangen door:- OracleDbType.RefCursor
Zoek:- parameter.OracleType
Vervangen door:- parameter.OracleDbType
Compileer nu en als je een foutmelding krijgt, doe dan het volgende Waarschuwing als fout:XML-commentaar op - Verwijder de gemarkeerde foutinhoud / vervang deze door een juiste opmerking Hopelijk zou het nu goed moeten compileren.
Nu kan de DLL die is gegenereerd door het compileren van het bovenstaande project worden gebruikt tegen zowel SqlServer als Oracle [ODP.Net]