Гость
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Замена connectionString пр иработе программы? / 25 сообщений из 28, страница 1 из 2
03.02.2014, 14:31
    #38547215
den_first
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Все привет!
Запустил прогу с ConnectionString своим, потом например, подменили App.config и ConnectionString уже другой, у клиента прога висит, мне надо в проге сравнить два конекшина, до и после. До выбирается ConfigurationManager.ConnectionStrings["connectionString"].ConnectionString, а вот после подмены тем же способом ConfigurationManager.ConnectionStrings["connectionString"].ConnectionString выбирает все тот же старый конекшен? как выбрать уже новый конекшен?
Заранее спасибо!
...
Рейтинг: 0 / 0
04.02.2014, 11:18
    #38548222
Sergey S
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Попробуй простой файл с настройками - например сделать свой класс и сериализовать его в хмl потом сохранить в файл и наоборот...
...
Рейтинг: 0 / 0
04.02.2014, 12:53
    #38548425
D129
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
den_first как выбрать уже новый конекшен?

Код: c#
1.
 ConfigurationManager.RefreshSection



позволяет прочитать конфигурацию с диска еще раз.
...
Рейтинг: 0 / 0
05.02.2014, 18:27
    #38550876
den_first
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Спасибо всем, вот решение моей задачки, кому интересно:

System.Configuration.Configuration config =
ConfigurationManager.OpenExeConfiguration(
ConfigurationUserLevel.None);
string connectionStringChanged = config.ConnectionStrings.ConnectionStrings["connectionString"].ConnectionString;
...
Рейтинг: 0 / 0
05.02.2014, 18:38
    #38550893
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
D129den_first как выбрать уже новый конекшен?

Код: c#
1.
 ConfigurationManager.RefreshSection



позволяет прочитать конфигурацию с диска еще раз.+1
...
Рейтинг: 0 / 0
07.02.2014, 07:51
    #38552760
fortibransa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
А зачем эти танцы с бубнами?
Пароль чтоль добавить?
Ну не важно
можно так, на старте ПО (ну или когда нужно) подмени саму ConnectionString
Код: c#
1.
2.
3.
4.
string c = Properties.Settings.Default.ConnectionString;
System.Data.SqlClient.SqlConnectionStringBuilder sbb = new System.Data.SqlClient.SqlConnectionStringBuilder(c);
sbb.Password = pwd
Properties.Settings.Default["ConnectionString"] = sbb.ToString();


Т.е.
Properties.Settings.Default.ConnectionString = newConnStr - так сделать нельзя.
Properties.Settings.Default["ConnectionString"] = newConnStr - а вот так можно.
...
Рейтинг: 0 / 0
07.02.2014, 12:18
    #38553084
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
fortibransaА зачем эти танцы с бубнами?В первом посте написано.
...
Рейтинг: 0 / 0
07.02.2014, 15:54
    #38553655
fortibransa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
skyANAfortibransaА зачем эти танцы с бубнами?В первом посте написано.Мой вопрос, зачем подменять? В первом посте ответа нет.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
06.05.2019, 18:46
    #39810382
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
попался чей-то проект (возможно, даже мой, но опыта у меня мало, даже не помню, какой там EF и есть ли он там вообще)
Нужно в рантайме менять строку коннекта, для коннекта к разным БД:
есть список из нескольких БД, в рантайме надо менять коннект на любую из них


Опыта работы с c# + database не хватает, потому пришлось пробовать всякую пришедшую в голову хрень:


1. глянул в файл UserDB_DataSet.Designer.cs в public partial class UserDB_DataSet : global::System.Data.DataSet {
2. увидел, что в каждом public partial class MyTableAdapter : global::System.ComponentModel.Component {
есть свой private global::System.Data.SqlClient.SqlConnection _connection;
3. и что он у всех свой уникальный:
Код: c#
1.
2.
3.
4.
        private void InitConnection() {
            this._connection = new global::System.Data.SqlClient.SqlConnection();
            this._connection.ConnectionString = global::WebAsuMenuTreeAdmin.Properties.Settings.Default.UserDB_ConnectionString;
        }





4. написал в нужном месте
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
        private void ChangeConnectionString(
                System.Data.SqlClient.SqlConnection Connection,
                string connectionString)
        {
            Connection.Close();
            Connection.ConnectionString = connectionString;
            Connection.Open();
        }

        // и так вызываю
        ChangeConnectionString(TableAdapter1.Connection, "Data Source=****;Initial Catalog=UserDb;Integrated Security=True");
        ChangeConnectionString(TableAdapter2.Connection, "Data Source=****;Initial Catalog=UserDb;Integrated Security=True");
        ChangeConnectionString(TableAdapter3.Connection, "Data Source=****;Initial Catalog=UserDb;Integrated Security=True");


дальше глобальный рефреш все адаптеров

так вроде работает, но мне это не нравится совсем :(
Датаадаптеров десятки, под каждый менять я задолбаюсь, и это не наш метод :)

Как это сделать правильно?
...
Рейтинг: 0 / 0
06.05.2019, 19:45
    #39810400
fkthat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
andreymxДатаадаптеров десятки, под каждый менять я задолбаюсь
Тут уж ничего не поделать. Если через джоппу сделали изначально, то теперь подрочитесь с этим. В следующий раз у вас будут умнее и не будут задавать вопросы типа "а зачем это усложнять, можно просто накидать баттонов на форму"
...
Рейтинг: 0 / 0
14.06.2019, 09:49
    #39826428
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
fkthatЕсли через джоппу сделали изначально

пошёл в обход через джоппу


добавил сет
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
    internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
        public string UsersDB_ConnectionString {
            get
            {
                return ((string)(this["MyDB_ConnectionString"]));
            }
            // 14-06-2019 AAM
            set
            {
                this["MyDB_ConnectionString"] = value;
            }
        }



добавил перед InitializeComponent
Код: c#
1.
2.
3.
                // 14-06-2019 AAM
                global::MyAdmin.Properties.Settings.Default.MyDB_ConnectionString = MyNewConnectionString;
                InitializeComponent();




Вроде работает
...
Рейтинг: 0 / 0
14.06.2019, 17:30
    #39826713
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
andreymx,

А это одна база на разных серверах, или разные бзы на разных серверах?
...
Рейтинг: 0 / 0
14.06.2019, 19:07
    #39826741
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Cat2andreymx,

А это одна база на разных серверах, или разные бзы на разных серверах?одна бза
Прод дев тест
...
Рейтинг: 0 / 0
15.06.2019, 13:46
    #39826829
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
andreymx,

В Program.cs, в Main() первыми строками.
Код: c#
1.
2.
3.
string server ="дев"; 
Properties.Settings.Default["MyDB_ConnectionString"] = $"Data Source={server};Initial Catalog=UserDb;Integrated; Security=True";
Properties.Settings.Default.Save();
...
Рейтинг: 0 / 0
15.06.2019, 16:06
    #39826838
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Cat2andreymx,

В Program.cs, в Main() первыми строками.
Код: c#
1.
2.
3.
string server ="дев"; 
Properties.Settings.Default["MyDB_ConnectionString"] = $"Data Source={server};Initial Catalog=UserDb;Integrated; Security=True";
Properties.Settings.Default.Save();

спасибо, попробую
...
Рейтинг: 0 / 0
18.06.2019, 18:09
    #39827902
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
andreymx,

Ну так чо там? Мне самому лень было пробовать, на Вас надеялся
...
Рейтинг: 0 / 0
18.06.2019, 18:26
    #39827915
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Cat2andreymx,

Ну так чо там? Мне самому лень было пробовать, на Вас надеялсясорри, целый день совещания, некогда проверить, пока работает старый вариант
...
Рейтинг: 0 / 0
18.06.2019, 18:31
    #39827917
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Cat2andreymx,

В Program.cs, в Main() первыми строками.


не делал
Код: c#
1.
string server ="дев"; 



сделал, вроде работает
Код: c#
1.
Properties.Settings.Default["MyDB_ConnectionString"] = $"Data Source={server};Initial Catalog=UserDb;Integrated; Security=True";




а это зачем? мне конфиг менять не надо
Код: c#
1.
Properties.Settings.Default.Save();
...
Рейтинг: 0 / 0
18.06.2019, 21:02
    #39827978
Roman Mejtes
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
ConnectionStringBuilder
SqlConnectionStringBuilder
...
Рейтинг: 0 / 0
18.06.2019, 22:33
    #39828013
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Roman Mejtes,

куда приткнуть?
...
Рейтинг: 0 / 0
19.06.2019, 08:22
    #39828105
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
andreymxа это зачем? мне конфиг менять не надо

Я точно не уверен, но без этого измененный параметр не будет действовать во всех модулях программы.
Что-то такое у меня было, сейчас уж и не помню.
...
Рейтинг: 0 / 0
19.06.2019, 10:38
    #39828189
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Cat2andreymxа это зачем? мне конфиг менять не надо

Я точно не уверен, но без этого измененный параметр не будет действовать во всех модулях программы.
Что-то такое у меня было, сейчас уж и не помню.а оно конфигу не перезапишет?
...
Рейтинг: 0 / 0
19.06.2019, 18:30
    #39828538
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
andreymxCat2пропущено...


Я точно не уверен, но без этого измененный параметр не будет действовать во всех модулях программы.
Что-то такое у меня было, сейчас уж и не помню.а оно конфигу не перезапишет?
Перезапишет. Но какая разница?
Продакшен можно откомпилировать с "правильным" сервером
...
Рейтинг: 0 / 0
19.06.2019, 19:32
    #39828551
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Туплю канешно. А разве не профилях дэплоя настраиваются connection strings, что и куда?
...
Рейтинг: 0 / 0
19.06.2019, 20:28
    #39828558
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Замена connectionString пр иработе программы?
Relic HunterТуплю канешно. А разве не профилях дэплоя настраиваются connection strings, что и куда?а если мне надо к разным бд?
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Замена connectionString пр иработе программы? / 25 сообщений из 28, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]