تغییر ConnectionString در زمان اجرا
سه شنبه 3 تیر 1393تغییر رشته اتصال بانک اطلاعاتی در زمان اجرا در این مقاله قصد داریم رشته اتصال بانک اطلاعاتی برنامه را در لحظه اجرای برنامه و بنا با شرایط تغییر دهیم
سلام دوستان
در این مقاله نحوه تغییر رشته اتصال بانک اطلاعاتی را در بررسی خواهیم کرد
ابتدا روی نام پروژه کلیک راست کرده و Add -->NewItem-->Application Configuration File را انتخاب کنید
در این فایل Section زیر را اضافه کنید
<connectionStrings> <add name="con" providerName="System.Data.sqlclient" connectionString="" /> </connectionStrings>
یک کانکشن با رشته اتصال خالی
سپس روی References کلیک راست کرده و کتابخانه System.Configuration را اضافه کنید
متد زیر عملیات تغییر رشته اتصال در Config را انجام میدهد
private void CheckingSource(string constr) { var config = ConfigurationManager.OpenExeConfiguration(Application.StartupPath + @"\ChangeConnectionStringRunTime_Csharp.exe"); config.ConnectionStrings.ConnectionStrings["con"].ConnectionString = constr; //CONCATINATE YOUR FIELDS TOGETHER HERE config.Save(ConfigurationSaveMode.Modified, true); ConfigurationManager.RefreshSection("connectionStrings"); }
فقط دقت داشته باشید که رشته اتصال در فایل خروجی موجود در پوشه Bin را تغییر میدهد
در دکمه ثبت بر اسال گزینه انتخاب شده رشته را ساخته و به این متد پاس میدهیم
string Connection = ""; if (rbSql.Checked) { Connection = string.Format("Data Source={0};Initial Catalog={1};User ID={2};Password={3}",txtServer.Text,txtDbName.Text,txtUserName.Text,txtPass.Text); } else { Connection = string.Format("Data Source={0};Initial Catalog={1};Integrated Security=True", txtServer.Text, txtDbName.Text); } CheckingSource(Connection);
خروجی :
<connectionStrings> <add name="con" connectionString="Data Source=localhost;Initial Catalog=Barnamenevisan;User ID=sa;Password=123" providerName="System.Data.sqlclient" /> </connectionStrings>
نمونه هم ضمیمه کردم
موفق باشید
- C#.net
- 7k بازدید
- 24 تشکر