![]() |
|
Модераторы: gambit |
![]()
|
|
| SuperPrize |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 25.12.2007 Репутация: нет Всего: нет |
Даже не знаю с чего начать
Необходимо реализовать простую вещь менеджер подключений к базе. При этом чтобы работал с Project Data Source (в том смысле чтобы строка подключения была видна в выпадающем списке доступных подключений). Все вроде здорово если строку мы храним в app.config и меняем ее при запуске приложения. Она видна в списке и при выборе подключения строку подключения мы можем поменять(вариант использования - сервер разработки всегда известен и статичен, а рабочий - всегда настраивается при запуске). А что если усложнить задачу. Есть class liblary которому необходимо использовать ту же строку подключения (которая будет известна только в рантайме) что у приложения. Прочитать файл с настройками приложения в рантайме мы конечно можем. Но вот незадача. В списке подключений при добавлении нового Data Source строки мы естессно не увидим. При создании Project Data Source генерируется класс (ну их много генерируется нас интересует только тот который имяTableAdapter с методом InitConnection) в котором и присваиваться строка подключения. Можно конечно залезать в каждый такой класс и править там инициализацию. Но как то не айс. Есть какие нибудь еще предложения? |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 8 Всего: 118 |
я так понял вы о XSD схемах речь ведете, если так то они генерируют partial классы и мы можем их расширить нашим методом (в другом файле вообще, не в том что генерируется) вроде "InitConnection", в котором (подсмотрев что нам негенит мастер (а точнее xsd.exe утилита)) и менять коннекшены. У нас, например, connection string нельзя подсмотреть в конфиге - при логине на сервере аутентификации запускается исполняемый outofprocess COM сервер (реализация singleton собственно), который и выдает строки соединения запрашивающим клиентам...
COM - потому что кроме .NET есть в проекте и VB6 и VBScript и C++ Править то что автогенерируется нельзя - оторвут руки другие разработчики. -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |