Здравствуйте, csharpworker, Вы писали:
C>В солюшене есть несколько проектов. C>Как сделать одну строку подключения к серверу БД для всех проектов? C>Т.к. app.config один на проект.
Класс со статическим свойсвом
public class ConnectToBase
{
public static string ConnString
{
get
{
return ConfigurationManager.AppSettings["ConnSrv"];
}
}
}
Здравствуйте, csharpworker, Вы писали:
C>В солюшене есть несколько проектов. C>Как сделать одну строку подключения к серверу БД для всех проектов? C>Т.к. app.config один на проект.
Здравствуйте, linker, Вы писали:
L>Здравствуйте, csharpworker, Вы писали:
C>>В солюшене есть несколько проектов. C>>Как сделать одну строку подключения к серверу БД для всех проектов? C>>Т.к. app.config один на проект.
L>Класс со статическим свойсвом L>
L>public class ConnectToBase
L> {
L> public static string ConnString
L> {
L> get
L> {
L> return ConfigurationManager.AppSettings["ConnSrv"];
L> }
L> }
L> }
L>
Мне кажется что все гораздо хуже.
Дело в том, что когда проект начинался, я добавил несколько датасетов в дизайнрежиме (ща об этом жалею но передлывать много не хочется). Теперь они тянут строку подключения из App.config. Как теперь этих датасетов заставить при инициализации изменить свое мнение о строке подключения?
Здравствуйте, Ziaw, Вы писали:
Z>Здравствуйте, csharpworker, Вы писали:
C>>В солюшене есть несколько проектов. C>>Как сделать одну строку подключения к серверу БД для всех проектов? C>>Т.к. app.config один на проект.
Z>для этого существуют именованые строки конекшена. Z>
Я об этом знаю. Но для каждого проекта свой app.config. А вдруг у меня имя сервера поменяется, или я их буду менять каждый день. Что ж теперь во всех app.config менять строку или добавлять.
Здравствуйте, csharpworker, Вы писали:
C>Мне кажется что все гораздо хуже. C>Дело в том, что когда проект начинался, я добавил несколько датасетов в дизайнрежиме (ща об этом жалею но передлывать много не хочется). Теперь они тянут строку подключения из App.config. Как теперь этих датасетов заставить при инициализации изменить свое мнение о строке подключения?
Наверное надо найти какая строка используется для этих датасетов
и смотреть на
public string dbConnectionString {
get {
return ((string)(this["dbConnectionString"]));
}
}
private void InitConnection() {
this._connection = new System.Data.OleDb.OleDbConnection();
this._connection.ConnectionString = global::WindowsApplication1.Properties.Settings.Default.dbConnectionString;
}
Здравствуйте, csharpworker, Вы писали:
C>Я об этом знаю. Но для каждого проекта свой app.config. А вдруг у меня имя сервера поменяется, или я их буду менять каждый день. Что ж теперь во всех app.config менять строку или добавлять.
Вы не перепутали пректы и приложения в топике?
Здравствуйте, Ziaw, Вы писали:
Z>Здравствуйте, csharpworker, Вы писали:
C>>Я об этом знаю. Но для каждого проекта свой app.config. А вдруг у меня имя сервера поменяется, или я их буду менять каждый день. Что ж теперь во всех app.config менять строку или добавлять. Z>Вы не перепутали пректы и приложения в топике?
Похоже...
В общем есть Solution. В нем есть несколько Project'ов.
Все эти Project"ы обращаются к одной БД.
мне хотелось бы одним движением руки поменять им всем строку подключения.
Для всех объектов которые я создаю програмно — решение очевидно,
но к сожалению есть в проектах DataGridView сконфигурированные в дизайнтайме — им бы както объяснить что строка подключения то уже другая... одним махом )
Здравствуйте, linker, Вы писали:
L>Здравствуйте, csharpworker, Вы писали:
C>>Мне кажется что все гораздо хуже. C>>Дело в том, что когда проект начинался, я добавил несколько датасетов в дизайнрежиме (ща об этом жалею но передлывать много не хочется). Теперь они тянут строку подключения из App.config. Как теперь этих датасетов заставить при инициализации изменить свое мнение о строке подключения?
L>Наверное надо найти какая строка используется для этих датасетов L>и смотреть на L>
L>Только в app.config поменяешь строку подключения.
Да про это я в курсе.
Но представь что у меня 6 проектов. мне эту строку в шести app.config менять надо. Это неприлично!
L>>Только в app.config поменяешь строку подключения. C>Да про это я в курсе. C>Но представь что у меня 6 проектов. мне эту строку в шести app.config менять надо. Это неприлично!
Случай тяжелый.Кто мешает использовать один app.config
Здравствуйте, csharpworker, Вы писали:
C>В солюшене есть несколько проектов. C>Как сделать одну строку подключения к серверу БД для всех проектов? C>Т.к. app.config один на проект.
app.config-ов будет столько же, сколько будет exe-шников. И менять все равно придется в нескольких местах для установленной программы. Такого понятия как config для группы приложений нет. Точнее есть (например, machine.config), но трогать их не надо.
В рантайме есть разные варианты:
1) использовать реестр, чтобы таскать строку подключения оттуда.
2) использовать (веб-)сервис, чтобы получать коннекшион стринг
и так далее. И делать это при старте приложения