У меня есть консольное приложение Windows, в котором есть файл App.config. Консольное приложение должно выполняться из задания агента SQL. В app.config я храню соединение с базой данных.
<connectionStrings>
<add name="Northwind" connectionString="Data Source=servername;Initial Catalog=Northwind;User ID=sqlUser;Password=secret" providerName="System.Data.SqlClient"/>
</connectionStrings>
Я получаю строку подключения во время выполнения, например:
var connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["Northwind"].ConnectionString;
Мой код отлично работает при отладке и может прочитать строку подключения из App.config.
Когда я собираю для релиза, в папке релиза нет app.config. Когда я копирую .exe на сервер, я получаю «Ссылка на объект не установлена ...» при попытке
чтобы получить строку подключения. Пробовал вручную копировать app.config, но без радости.
Нашел это, но не соответствует, так как моя сборка не создает файл с именем MyApp.exe.config.
Редактировать: он не создает файл, заканчивающийся * .exe.config.
Загрузка файла app.config в выпуске
Что я делаю не так?
Редактировать: Становится ли App.config частью .EXE в консольном приложении Windows?