sql >> Database teknologi >  >> RDS >> Oracle

Tilslutning af Oracle ved hjælp af ODP.NET med Enterprise Library DAAB

Jeg håber, at følgende trin vil give dig det korrekte resultat.

At erstatte System.Data.OracleClient med Oracle.DataAccess.Client; og Oracle.DataAccess.Types

Download og installer den seneste version af Microsoft Enterprise Library ver 3.1 Kan findes her:- http://msdn2.microsoft.com/en-us/library/aa480453.aspx

Download og installer Oracle ODP.Net fra Oracle-webstedet Din DLL-fil skal være i:-C:\oracle\product\11.1.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll

Når den beder dig om at installere kilden, skal du gøre det ved at bruge afkrydsningsfeltet.

Hvis du ikke kørte msi på følgende sti C:\Program Files\Microsoft Enterprise Library 3.1 - maj 2007\src

Koden til biblioteket bliver gemt på følgende sti C:\EntLib3Src\App Blocks

Tag en sikkerhedskopi af den originale src-mappe, hvis du får brug for dem senere - C:\EntLib3Src\App Blocks\Src

Åbn løsningsfilen EnterpriseLibrary.sln Og kom til dataprojektet under Data Access Application Block

Tilføj Oracle.DataAccess.dll-reference til dataprojektet. Din DLL-fil skal være i:- C:\oracle\product\11.1.0\client_1\odp.net\bin\2.x\Oracle.DataAccess.dll

Søg og erstat følgende [I stedet kan du downloade og bruge den opdaterede DLL, der er knyttet til denne artikel]

Fil :- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Fil :- C:\EntLib3Src\App Blocks\Src\Data\DatabaseConfigurationView.cs
Fil :- C :\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDataReaderWrapper.cs

Find :- using System.Data.OracleClient;
Erstat med:- using Oracle.DataAccess.Client; using Oracle.DataAccess.Types;

Fil :- C:\EntLib3Src\App Blocks\Src\Data\Configuration\DbProviderMapping.cs Klasse:- DbProviderMapping

Find :- System.Data.OracleClient
Erstat med:- Oracle.DataAccess.Client

Fil :- C:\EntLib3Src\App Blocks\Src\Data\Configuration\Manageability\ConnectionStringsManageabilityProvider.cs
Metode:- AddAdministrativeTemplateDirectives
Find:- System.Data.OracleClient
Erstat med:- Oracle.DataAccess.Client

Fil :- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Metode:- 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)

Erstat med:- 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)

Årsag:- OracleType erstattet med OracleDbType som den tredje parameter som typenavnet i odp.net API

Fil:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Fjern:- [OraclePermission(SecurityAction.Demand)] -

Har ikke en anelse om, hvad det gør, hvis nogen gør, skriv venligst om feedback-session

Fil:- C:\EntLib3Src\App Blocks\Src\Data\Oracle\OracleDatabase.cs
Find:- OracleType.Raw
Erstat med:- OracleDbType.Raw

Find:- param.OracleType
Erstat med:- param.OracleDbType

Find:- OracleType.Cursor
Erstat med:- OracleDbType.RefCursor

Find:- parameter.OracleType
Erstat med:- parameter.OracleDbType

Kompiler nu, og hvis du får en fejl, skal du gøre følgende Advarsel som fejl:XML kommentere - Fjern det fremhævede fejlindhold / erstat det med passende kommentar. Forhåbentlig skulle det kompilere fint nu.

Nu kan den DLL, der blev genereret ved kompilering af ovenstående projekt, bruges mod både SqlServer og Oracle [ODP.Net]



  1. MySQL - Adgang nægtet for bruger

  2. Gruppér mysql-forespørgsel med 15 minutters intervaller

  3. Sådan finder du langsomste forespørgsler

  4. Hvordan kombineres LIKE med IN i en MYSQL-forespørgsel?