ConfigurationManager.ConnectionStrings [""] имеет значение null при использовании в уровне доступа к данным (DAL) для форм Windows. - PullRequest
1 голос
/ 16 декабря 2011

Я использую архитектуру представления модели (MVP) в моем приложении Windows Form.Все отлично.Но во время доступа к данным я столкнулся с проблемой, что ConfigurationManager.ConnectionStrings [""] имеет значение null, поэтому я не могу взаимодействовать с базой данных.

Дизайн моего слоя DAL: Сначала я добавил проект библиотеки классов.Затем добавил источник данных в проект.Это добавило app.config в мой проект DAL с необходимой строкой подключения.Затем некоторые классы для обработки базы данных.Там при инициализации моей строки подключения
приватная строка connString = ConfigurationManager.ConnectionStrings ["SimpleBilling_MVP_Ribbon.DAL.Properties.Settings.Test_SimpleBillingDBConnectionString"]. ConnectionString;

Здесь я получил исключение 'Аргумент вне диапазона 'как configurationManager.ConnectionStrings [""] имеет значение null.

Мои выводы: 1) Некоторые сказали, что app.config должен быть единым для всего приложения и поэтому должен находиться в проекте ввода приложения.Но там, где я должен сохранить это, View не является подходящим местом, так как в конце концов DAL будет нуждаться в этом.

2) Я провел некоторый поиск и узнал, что configurationManager.ConnectionStrings [""] можетнельзя использовать в проекте библиотеки классов (DLL) прямым способом.Я получил несколько статей по проекту кода, чтобы продемонстрировать их использование в DLL, используя некоторые обходные пути.

Но в моем случае это не просто DLL с необходимостью обрабатывать ConfigurationManager.Все MVP будут иметь одинаковую необходимость обрабатывать базу данных одинаково?Итак, как люди это делают?

Ваша опытная мысль будет очень полезна здесь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...