Saltar al contenido

Cómo conectarse a una conexión de base de datos Oracle desde .Net Core

Solución:

Versión beta del controlador administrado de .Net Core lanzado por Oracle a fines de enero de 2018 http://www.oracle.com/technetwork/topics/dotnet/downloads/net-downloads-160392.html. La plataforma de mención admitida en doc ahora es Win y Linux.

Nuget: https://www.nuget.org/packages/Oracle.ManagedDataAccess.Core

Otras alternativas antiguas con clientes Oracle instantáneos / estándar:

  • para .Net Core 2.0 I recomendar para utilizar ericmend oracleClientCore-2.0: https://github.com/ericmend/oracleClientCore-2.0. Nuget: dotNetCore.Data.OracleClient Lo usé con éxito en la plataforma Win y Linux. Ahí está mi pequeña muestra
  • Alternativamente System.Data.OracleClient también funciona para 2.0 – vea la publicación de @Owen. Pero lo pruebo solo en la plataforma Win
  • para .Net Core> = 1.0 puede usar el cliente LinqDan Oracle no oficial para .NET Core basado en el cliente Oracle de Mono https://github.com/LinqDan/oracleclientcore Nuget: Mono.Data.OracleClientCore.

mi TestCore.csproj para la última alternativa:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp1.0</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Mono.Data.OracleClientCore" Version="1.0.0" />
  </ItemGroup>
</Project>

Mi program.cs:

using System;
using System.Data.OracleClient;

namespace TestCore
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Starting.rn");                      
            using (var _db = new OracleConnection("User Id=myUser;Password=myPassword;Data Source=MyOracleConnection"))
            {
                Console.WriteLine("Open connection...");
                _db.Open();
                Console.WriteLine(  "Connected to:" +_db.ServerVersion);
                Console.WriteLine("rnDone. Press key for exit");
                Console.ReadKey();
            }           
        }
    }
}

Oracle planea certificar ODP.NET, controlador administrado en Microsoft .NET Core a fines del año calendario 2017.
Oracle tiene la intención de admitir ODP.NET administrado en .NET Core en sistemas operativos Windows y Oracle Linux. Managed ODP.NET puede admitir sistemas operativos adicionales. Oracle continuará evaluando el soporte para otras distribuciones de Linux y anunciará adiciones a la lista de certificación en el futuro. Oracle no planea certificar en versiones anteriores a Microsoft .NET Core 2.0. .NET Core 2.0 contiene numerosas características que hacen posible la certificación ODP.NET administrada en el marco

De este artículo: http: //www.oracle.com/technetwork/topics/dotnet/tech-info/odpnet-dotnet-core-sod-3628981.pdf

Actualizado: Beta lanzado ODP.NET Core

Oracle publicó el proveedor de datos oficial para .NET Core en nuget.

Aquí hay un ejemplo básico para mostrar cómo usarlo:

using Oracle.ManagedDataAccess.Client;

public void Execute(string queryString, string connectionString)
{
    using (OracleConnection connection = new OracleConnection(connectionString))
    {
        OracleCommand command = new OracleCommand(queryString, connection);
        command.Connection.Open();
        command.ExecuteNonQuery();
    }
}

Básicamente, puede usarlo exactamente como el .NET System.Data.SqlClient oficial (fáciles de encontrar tutoriales en línea para esto) y simplemente reemplazar en todas partes en el código SqlConnection con OracleConnection y SqlCommand con OracleCommand.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *