Строка подключения. Как правильно прописать её для объектов, добавленн

Тема в разделе ".NET", создана пользователем m4igor, 27 ноя 2010.

Наш партнер Genesis Hackspace
  1. m4igor

    m4igor Гость

    В моей программе происходит обычная работа с базой данных в DataGridView выводится содержимое Dataset и т.д. это не очень важно
    Добавлял я элементы с помощью конструктора и на одним из шагов, там был вопрос про параметры соединения. Как я понял параметры соединения прописываются в XML файле app.config
    Код (Text):
    <?xml version="1.0"?>
    <configuration>
    <configSections>
    </configSections>
    <connectionStrings>
    <add name="privet.Properties.Settings.dbprivetConnectionString" connectionString="Data Source=IGOR-FS\SQLEXPRESS2;Initial Catalog=dbprivet;Integrated Security=True" providerName="System.Data.SqlClient"/>
    </connectionStrings>
    <startup><supportedRuntime version="v2.0.50727"/></startup></configuration>
    в файле dbprivetDataSetAgents.Designer.cs они используются
    Код (Text):
    private void InitConnection() {
    this._connection = new global::System.Data.SqlClient.SqlConnection();
    this._connection.ConnectionString = global::privet.Properties.Settings.Default.dbprivetConnectionString;           
    }
    а как мне сделать оптимально, что бы хотя бы имя компьютера было "переносимым", а не статическим. Т.е. если я буду запускать свою программу на другом компе (при этом допустим имя SQL сервера будет такое же - SQLEXPRESS2) - имя-то его будет другим.

    Когда я работаю без объектов и конструкторов, а всё руками прописываю, можно так написать:
    Код (Text):
    dbconnection.ConnectionString = "Data Source=" + Environment.MachineName +"\\SQLEXPRESS2;Initial Catalog=dbprivet;Integrated Security=True";
    нормально ли будет если прямо исправлю строку
    Код (Text):
    this._connection.ConnectionString
    на то, что выше или можно сделать как-то оптимальнее и правильнее, всё таки dbprivetDataSetAgents.Designer.cs создаётся дизайнером и в его лучше не править
     
  2. BoYar

    BoYar Гость

    собственно не вижу проблемы. То что вы называете "статическим" именем компьютера таковым не является: при переносе приложения на другую машину просто руками меняем имя компьютера, сервера, базы данных, параметров безопасности (ведь доступ к серверу может быть как windows authentication так и sql server authentication) в этом самом файле app.config. после этого никаких ребилдов приложения делать не надо.
     
Загрузка...

Поделиться этой страницей