es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Azure asp.net web app intentando conectarse a Oracle a través del servicio vinculado de integración en tiempo de ejecución.

He creado tanto un servicio de aplicaciones web como una factoría de datos con un servicio de integración en tiempo de ejecución vinculado a Oracle (conexión probada y funcionando) en Azure. El servicio de aplicaciones web es asp.net core y está escrito en c#.

La pregunta es: ¿Cómo establezco una conexión desde el servicio de aplicaciones web a esta conexión de servicio vinculado a Oracle?

Usando odbc connection, puedo conectarme localmente desde mi computadora a la base de datos de Oracle utilizando este formato de cadena:

Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MiHost)(PORT=MiPuerto))(CONNECT_DATA=(SERVICE_NAME=MiSIDOracle)));User Id=miUsuario;Password=miContraseña;

¿Cómo hago referencia al servicio vinculado a Oracle en este código de c#? (¿es posible?)

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para establecer una conexión desde el servicio de aplicación web a la conexión de servicio vinculado de Oracle en el código de c#, puedes utilizar Oracle Data Provider for .NET (ODP.NET).

    Primero, necesitas instalar el paquete ODP.NET desde NuGet en tu proyecto asp.net core. Luego, puedes utilizar el siguiente código para establecer una conexión usando la cadena de conexión que proporcionaste:

    using Oracle.ManagedDataAccess.Client; 
    
    string conString = "Data Source=<service-name>;User Id=<username>;Password=<password>"; 
    OracleConnection con = new OracleConnection(conString); 
    con.Open();  // abrir la conexión
    

    Reemplaza <service-name>, <username> y <password> con los valores apropiados de tu servicio vinculado de Oracle.

    Con este objeto de conexión, puedes ejecutar consultas SQL contra la base de datos de Oracle. No olvides cerrar la conexión cuando hayas terminado:

    OracleCommand cmd = new OracleCommand("SELECT * FROM my_table", con); 
    OracleDataReader reader = cmd.ExecuteReader(); 
    
    while (reader.Read())
    {
        // hacer algo con el resultado
    }
    
    reader.Dispose(); 
    cmd.Dispose(); 
    con.Close();  // cerrar la conexión
    

    Así que sí, es posible hacer referencia a la conexión de servicio vinculado de Oracle en tu código de c# utilizando la biblioteca ODP.NET.

Comments are closed.