obtener connectionstrings conexion cadena app c# ado.net exception-handling connection-string app-config

c# - connectionstrings - Obtener cadena de conexión de App.config



obtener cadena de conexion web.config c# (18)

var connection = ConnectionFactory.GetConnection( ConfigurationManager.ConnectionStrings["Test"] .ConnectionString, DataBaseProvider);

Y este es mi App.config:

<?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="Test" connectionString="Data Source=.;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" /> </connectionStrings> </configuration>

Pero cuando mi proyecto se ejecuta este es mi error:

Referencia a objeto no establecida como instancia de un objeto.


¿No puedes hacer lo siguiente?

var connection = System.Configuration.ConfigurationManager. ConnectionStrings["Test"].ConnectionString;

Su ensamblaje también necesita una referencia a System.Configuration.dll


1) Crea un nuevo formulario y agrega esto:

Imports System.Configuration Imports Operaciones.My.MySettings Public NotInheritable Class frmconexion Private Shared _cnx As String Public Shared Property ConexionMySQL() As String Get Return My.MySettings.Default.conexionbd End Get Private Set(ByVal value As String) _cnx = value End Set End Property End Class

luego, cuando desee utilizar la conexión, haga esto en su forma:

Private Sub frmInsert_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim cn As New MySqlConnection(frmconexion.ConexionMySQL) cn.open()

y eso es. Estarás conectado a la base de datos y puedes hacer cosas.

Esto es para vb.net pero la lógica es la misma.


Dado que esta es una pregunta muy común, he preparado algunas capturas de pantalla de Visual Studio para que sea fácil de seguir en 4 simples pasos.


Es posible que el OP en esta pregunta esté tratando de usar un App.Config dentro de una dll.

En este caso, el código intenta acceder a la aplicación. Configuración del ejecutable y no a la dll. Dado que no se encuentra el nombre, se devuelve un valor nulo, por lo que se muestra la excepción.

La siguiente publicación puede ser útil: ConnectionString de app.config de una DLL es nula


Esto funcionó para mí:

string connection = System.Configuration.ConfigurationManager.ConnectionStrings["Test"].ConnectionString;

Salidas:

Fuente de datos =.; Catálogo inicial = OmidPayamak; IntegratedSecurity = True "


Has probado:

var connection = new ConnectionFactory().GetConnection( ConfigurationManager.ConnectionStrings["Test"] .ConnectionString, DataBaseProvider);


Hice referencia a la biblioteca System.Configuration y tengo el mismo error. Los archivos de depuración no tenían su aplicación .config, crear manualmente este archivo. El error es que resolví esto copiando el archivo "appname.exe.config" en la carpeta de depuración. El IDE no fue creado el archivo.


Parece que el problema no es de referencia, está obteniendo la cadena de conexión como nula, así que asegúrese de haber agregado el valor al archivo de configuración de su proyecto en ejecución, que es el programa / biblioteca principal que se inicia / ejecuta primero.


Primero agregue una referencia de System.Configuration a su página.

using System.Configuration;

Luego, de acuerdo con su app.config, obtenga la cadena de conexión como sigue.

string conStr = ConfigurationManager.ConnectionStrings["Test"].ToString();

Eso es todo, ahora tienes tu cadena de conexión en la mano y puedes usarla.


Primero debe agregar la referencia de System.Configuration a su proyecto y luego usar el código a continuación para obtener la cadena de conexión.

_connectionString = ConfigurationManager.ConnectionStrings["MYSQLConnection"].ConnectionString.ToString();


Probar esto

string abc = ConfigurationManager.ConnectionStrings["CharityManagement"].ConnectionString;


Puede obtener la cadena de conexión utilizando la línea de código que se encuentra debajo de

using System; using System.Configuration; var connectionString=ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;

Aquí hay una referencia: Cadena de conexión de App.config


Resolví el problema usando el índice para leer la cadena y marcando uno por uno. La lectura con el nombre sigue dando el mismo error.
Tengo el problema cuando desarrollo una aplicación de ventana C #, no tuve el problema en mi aplicación asp.net. Debe haber algo en el entorno que no sea correcto.


También verifique que haya incluido la dll System.Configuration en sus referencias. Sin él, no tendrá acceso a la clase ConfigurationManager en el espacio de nombres de System.Configuration.


Tuve el mismo problema. Mi solución fue construida a partir de dos proyectos. Una Class library y un sitio web que hace referencia al proyecto de la biblioteca de clases. el problema era que estaba intentando acceder a la aplicación App.config en el proyecto de mi Class library , pero el sistema estaba buscando en la Web.config del sitio web. Puse la cadena de conexión dentro de Web.config y ... ¡problema resuelto!

La razón principal fue que, a pesar de que ConfigurationManager se usó en otro ensamblaje, estaba buscando dentro del proyecto runnig.


//Get Connection from web.config file public static OdbcConnection getConnection() { OdbcConnection con = new OdbcConnection(); con.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["con"].ConnectionString; return con; }


string sTemp = System.Configuration.ConfigurationManager.ConnectionStrings["myDB In app.config"].ConnectionString;


string str = Properties.Settings.Default.myConnectionString;