Прочитать строку подключения из web.config - PullRequest
242 голосов
/ 26 мая 2011

Как мне прочитать строку подключения из файла web.config в открытый класс, содержащийся в библиотеке классов?

Я пробовал:

WebConfigurationManager

ConfigurationManager

Но эти классы не распознаются в моей библиотеке классов.

Ответы [ 12 ]

489 голосов
/ 26 мая 2011

Вам нужно добавить ссылку на System.Configuration и затем использовать:

System.Configuration.ConfigurationManager.
    ConnectionStrings["connectionStringName"].ConnectionString;
169 голосов
/ 26 мая 2011

Добавьте System.Configuration в качестве ссылки.

По какой-то странной причине он не включен по умолчанию.

60 голосов
/ 18 июня 2013

C #

// 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
22 голосов
/ 08 августа 2011

Добавьте System.Configuration в качестве ссылки, затем:

 using System.Configuration;

 ...

 string conn = 
    ConfigurationManager.ConnectionStrings["ConnectionName"].ConnectionString;
17 голосов
/ 26 мая 2011

Полагаю, вам нужно добавить ссылку на сборку System.Configuration , если она еще не была добавлена.

Также может потребоваться вставить следующую строку вверхувашего файла кода:

using System.Configuration;
14 голосов
/ 26 мая 2011

В VB: это должно работать

ConfigurationManager.ConnectionStrings("SQLServer").ConnectionString

В C# это будет (согласно комментарию Ala)

ConfigurationManager.ConnectionStrings["SQLServer"].ConnectionString
9 голосов
/ 14 декабря 2015

Вы должны вызвать этот класс в верхней части вашей страницы или класса:

using System.Configuration;

Затем вы можете использовать этот метод, который возвращает строку подключения, готовую для передачи в объект sqlconnection, чтобы продолжитьработать следующим образом:

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

Просто чтобы прояснить ситуацию, это значение в сети. Конфиг:

  <add name="DBWebConfigString" connectionString="....." />   </connectionStrings>
9 голосов
/ 29 января 2013
using System.Configuration;


string conn = ConfigurationManager.ConnectionStrings["ConStringName"].ToString();
8 голосов
/ 24 августа 2017
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;  

C #

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

НИЖЕ ВЕБ> КОНФИГ. КОД ФАЙЛА

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

В коде ablove ABCD - имя соединения

4 голосов
/ 14 августа 2013
using System.Configuration;


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

Помните, что не используйте ConnectionStrings [index], потому что вы можете использовать Глобальную конфигурацию и переносимость машины

...