Получить строку подключения из App.config

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

И это мой App.config:

       

Но когда мой проект работает, это моя ошибка:

В экземпляре объекта не задана ссылка на объект.

Не можете ли вы просто сделать следующее:

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

Для сборки также нужна ссылка на System.Configuration.dll

Поскольку это очень распространенный вопрос, я подготовил несколько снимков экрана из Visual Studio, чтобы упростить его выполнение в 4 простых шага.

получить строку подключения из app.config

 string str = Properties.Settings.Default.myConnectionString; 

Также проверьте, что вы включили dll System.Configuration в свои ссылки. Без этого у вас не будет доступа к classу ConfigurationManager в пространстве имен System.Configuration.

Сначала добавьте ссылку на System.Configuration на свою страницу.

 using System.Configuration; 

Затем в соответствии с вашим app.config введите строку подключения следующим образом.

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

Теперь у вас есть строка подключения в вашей руке, и вы можете ее использовать.

 //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 abc = ConfigurationManager.ConnectionStrings["CharityManagement"].ConnectionString; 

1) Создайте новую форму и добавьте следующее:

 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 

то, когда вы хотите использовать соединение, сделайте это в форме ur:

  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() 

вот и все. Вы будете подключены к БД и можете делать что-то.

Это для vb.net, но логика такая же.

Ты пробовал:

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

Я была такая же проблема. мое решение было создано из двух проектов. Class library и веб-сайт, ссылающийся на проект библиотеки classов. проблема заключалась в том, что я пытался получить доступ к App.config в моем проекте Class library но система искала в Web.config веб-сайта. Я поставил строку подключения внутри Web.config и … проблема решена!

Основная причина заключалась в том, что, несмотря на то, что ConfigurationManager использовался в другой сборке, он искал внутри runnig-проекта.

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

Вы можете получить строку подключения, используя нижнюю строку кода –

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

Вот ссылка: Connection String из App.config

Кажется, проблема не в ссылке, вы получаете connectionstring как null, поэтому, пожалуйста, убедитесь, что вы добавили значение в конфигурационный файл, ваш запущенный проект означает основную программу / библиотеку, которая запускается / выполняется сначала.

Возможно, ОП в этом вопросе пытается использовать App.Config внутри dll.

В этом случае код фактически пытается получить доступ к App.Config исполняемого файла, а не к dll. Поскольку имя не найдено, вы получаете возвращаемый Null, поэтому показано исключение.

Может быть полезно следующее сообщение: ConnectionString из app.config библиотеки DLL

Сначала вам нужно добавить ссылку System.Configuration в свой проект, а затем использовать код ниже для получения строки подключения.

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

Это сработало для меня:

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

Выходы:

Источник данных =; Начальный каталог = OmidPayamak; IntegratedSecurity = True ”

Я ссылался на библиотеку System.Configuration и у меня такая же ошибка. У файлов отладки не был свой app.config, создайте вручную этот файл. Ошибка в том, что я решил это копировать файл «appname.exe.config» в папку отладки. IDE не создавал файл.

Я решил проблему, используя индекс для чтения строки и проверки по одному. Чтение с использованием имени по-прежнему дает ту же ошибку.
У меня возникла проблема при разработке windows приложения C #, у меня не было проблемы в моем приложении asp.net. В настройке должно быть что-то неправильное.

Давайте будем гением компьютера.