connectionStringsSection.ConnectionStrings["HDesk.Properties.Settings.deskConnectionSt
ring"].ConnectionString = cc;
config.Save();// сохранение файла app.config
ConfigurationManager.RefreshSection("connectionStrings");//обновление секции
connectionStrings, чтобы изменения вступили в силу
}
}
При начальной инициализации данных пользователь может создать
структуру базы данных с помощью следующего кода:
if (textBox2.Text=="" || textBox1.Text=="")
{
MessageBox.Show("Введите имя сервера и имя создаваемой БД");
return;
}
String str;
SqlConnection myConn = new
SqlConnection("Server="+textBox1.Text+";Integrated security=SSPI;database=master");
//сощдаем БД
str = "CREATE DATABASE " + textBox2.Text + " ON PRIMARY " +
"(NAME = MyDatabase_Data, " +
"FILENAME = '" + Application.StartupPath + "\\" + textBox2.Text +
".mdf',"+
"SIZE = 5MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " +
"LOG ON (NAME = MyDatabase_Log, " +
"FILENAME = '"+ Application.StartupPath + "\\" + textBox2.Text +
".ldf" + "', " +
"SIZE = 5MB, " +
"MAXSIZE = 7MB, " +
"FILEGROWTH = 10%)";
SqlCommand myCommand = new SqlCommand(str, myConn);
try
{
myConn.Open();
myCommand.ExecuteNonQuery();
myCommand = new SqlCommand("ALTER DATABASE["+ textBox2.Text + "] SET
READ_WRITE", myConn);
myCommand.ExecuteNonQuery();
myConn.Close();
//структура БД
string sqlConnectionString = "Data Source=" + textBox1.Text +
";Initial Catalog="+ textBox2.Text + ";Integrated Security=True";
FileInfo file = new FileInfo(Application.StartupPath + "\\newdb.sql");
string script = file.OpenText().ReadToEnd();
SqlConnection conn = new SqlConnection(sqlConnectionString);
Server server = new Server(new ServerConnection(conn));
server.ConnectionContext.ExecuteNonQuery(script);
//сохраняем имя новой БД в файле settings.ini
using (var sw = new StreamWriter(File.Open(@"settings.ini",
FileMode.Create)))
{
//запись сразу с сохранением
sw.Write(textBox1.Text + ";" + textBox2.Text + ";10");
}