2009-12-14 1 views
1

ПРЕДПОСЫЛКИ: В большинстве моих программ используются адаптеры таблицы, а строки подключения хранятся в настройках приложения. Это прекрасно работает, но является реальной PITA при переходе от разработки к производственной среде. Я должен был вручную изменить строки подключения до и после начала работы над любым приложением.Как получить список табличных адаптеров?

После небольшого исследования я нашел, как динамически переключаться строки подключения для настольных адаптеров. Просто добавив настраиваемое свойство для connectionString, я смог добиться этого. Но мне все равно нужно добавлять код в новое событие для каждого приложения, чтобы строки подключения переключались при загрузке. (Мои строки подключения хранятся в качестве свойства приложения в общей DLL. Я просто оставляю одну копию DLL с моими строками подключения локально и одну копию DLL с производственными цепочками подключения на рабочем сервере.)

нОВАЯ ПРОБЛЕМА

Я хотел бы сделать еще один шаг дальше и нужно либо наборы данных изменить строки подключения для всех адаптеров таблиц каждый из них содержит, когда они загружаются с помощью нового события или сделать то же самое с VB. У меня может быть до 3 наборов данных в любой момент времени.

Я действительно сильно зависим от intellisense, чтобы помочь мне определить, какие методы и свойства доступны, но я не могу найти способ получить список адаптеров таблицы в моих наборах данных. По-видимому, они не являются частью любой коллекции объектов, насколько я могу судить. Я искал достаточно для решения, но не повезло.

Marshall

+0

Когда вы говорите * Мои строки подключения хранятся в качестве свойства свойства приложения в общей DLL *, вы имеете в виду встроенную в dll? Или как настройка приложения для этой DLL? –

+0

Как настройка приложения для этой DLL – Marshall

+0

В DLL есть метод, который при вызове строки подключения из настройки приложения копируется в несколько общедоступных ячеек, которые у меня установлены в DLL. Вот как я обращаюсь к новым строкам подключения. – Marshall

ответ

1

Вы можете перенастроить расположение строк подключения. Сделайте свой слой презентации (например, приложение) в строке подключения в app.config. Теперь вот крутая часть ... любой .DLL, который используется приложением, может получить доступ к приложению app.config приложения, используя ConfigurationManager.ConnectionStrings («MyConnectionString»). Функция ToString. Ваш .DLL будет вызывать строку соединения по имени, а вызов распространяется до приложения app.config. Если вам не нужен жесткий код «MyConnectionString», вам следует просто передать строку подключения в .DLL через свойство объекта.

Если вы НЕ хотите переупорядочить строку подключения «собственность», просто выведите строку подключения .DLL из собственного файла конфигурации через статический объект в .DLL, который приложение может прочитать. Назначьте это TableAdapters.

В качестве дополнительной заметки, если вы уже знакомы с удобными DLL-библиотеками, вы перемещаете всю логику доступа к данным в свою собственную DLL в качестве уровня доступа к данным (DAL) - получите логику доступа к данным из слоя презентации!

 Смежные вопросы

  • Нет связанных вопросов^_^