net mvc from example connectionstrings conexion cadena asp c# .net asp.net web-config connection-string

c# - mvc - Leer la cadena de conexión de web.config



connectionstrings web.config c# (12)

Añadir System.Configuration como referencia.

Por alguna extraña razón no está incluido por defecto.

¿Cómo puedo leer una cadena de conexión de un archivo web.config en una clase pública contenida en una biblioteca de clases?

He intentado:

WebConfigurationManager ConfigurationManager

Pero estas clases no son reconocidas dentro de mi biblioteca de clases.


Agregue System.Configuration como una referencia entonces:

using System.Configuration; ... string conn = ConfigurationManager.ConnectionStrings["ConnectionName"].ConnectionString;


Debe agregar una referencia a System.Configuration y luego usar:

System.Configuration.ConfigurationManager. ConnectionStrings["connectionStringName"].ConnectionString;


En VB : Esto debería funcionar

ConfigurationManager.ConnectionStrings("SQLServer").ConnectionString

En C# sería (según comentario de Ala)

ConfigurationManager.ConnectionStrings["SQLServer"].ConnectionString


Primero agregue esto:

using System.Configuration;


Supongo que debe agregar una referencia al ensamblado de System.Configuration si aún no se ha agregado.

Además, es posible que deba insertar la siguiente línea en la parte superior de su archivo de código:

using System.Configuration;


Tienes que invocar esta clase en la parte superior de tu página o clase:

using System.Configuration;

Luego, puede usar este método que devuelve la cadena de conexión para estar listo para pasar al objeto sqlconnection para continuar su trabajo de la siguiente manera:

private string ReturnConnectionString() { // Put the name the Sqlconnection from WebConfig.. return ConfigurationManager.ConnectionStrings["DBWebConfigString"].ConnectionString; }

Solo para hacer una clara aclaración, este es el valor en la configuración web:

<add name="DBWebConfigString" connectionString="....." /> </connectionStrings>


Todo el mundo parece estar sugiriendo que añadiendo

using System.Configuration;

cual es verdad.

Pero, ¿puedo sugerirle que piense en instalar la extensión Visual Studio de ReSharper?

Una vez instalado, en lugar de ver un error que indica que una clase no está definida, verá un mensaje que le indica en qué ensamblaje se encuentra, preguntándole si desea agregar la declaración de uso necesaria.


DO#

// Add a using directive at the top of your code file using System.Configuration; // Within the code body set your variable string cs = ConfigurationManager.ConnectionStrings["connectionStringName"].ConnectionString;

VB

'' Add an Imports statement at the top of your code file Imports System.Configuration '' Within the code body set your variable Dim cs as String = ConfigurationManager.ConnectionStrings("connectionStringName").ConnectionString


using System.Configuration; string conn = ConfigurationManager.ConnectionStrings["ConStringName"].ToString();


using System.Configuration; string connString = ConfigurationManager.ConnectionStrings["ConStringName"].ToString();

Recuerde que no use ConnectionStrings [índice] porque es posible que la configuración y la portabilidad de la máquina global


using System; using System.Collections.Generic; using System.Configuration; using System.Data.SqlClient; using System.Drawing; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.DataVisualization.Charting; using System.Web.UI.WebControls;

DO#

string constring = ConfigurationManager.ConnectionStrings["ABCD"].ConnectionString; using (SqlConnection con = new SqlConnection(constring))

A CONTINUACIÓN WEB> CONFIG FILE CODE

<connectionStrings> <add name="ABCD" connectionString="Data Source=DESKTOP-SU3NKUU/MSSQLSERVER2016;Initial Catalog=TESTKISWRMIP;Integrated Security=True" providerName="System.Data.SqlClient"/> </connectionStrings>

En el código ablove ABCD es el nombre de la conexión