View Full Version : سوال: دادن پارامتر رشته ای به app.config
میلاد قاضی پور
چهارشنبه 22 اردیبهشت 1389, 10:49 صبح
سلام . در برنامه ام قصد دارم یک کانکشن استرینگ پیش فرض و یکی دیگه که کاربر وقتی فایل دیتا بیس مورد نظرش رو فراخوانی میکنه داشته باشم . برای اینکار لازمه که در فایل app.config دو نوع کانکشن استرینگ داشته باشم و نمیدونم چطور باید یکیشو به صورت متغیر در نظر بگیرم تا مسیر وارد شده توسط کاربر رو توش نگهدارم . یا اگر اینکار از طریق دیگه ای انجام میشه لطفا راهنمایی کنید .
r00tkit
چهارشنبه 22 اردیبهشت 1389, 13:03 عصر
سلام من نمی دونم دقیقا" چی کار می خوای انجام بدی
ولی می تونی connection string مورد نظر(همون دومی ) رو به صورت key/value ذخیره کنی و ازش استفاده کنی
مثال هم زیاده
دو نمونه
http://www.codeproject.com/KB/cs/SystemConfiguration.aspx
http://geekswithblogs.net/akraus1/articles/64871.aspx
میلاد قاضی پور
چهارشنبه 22 اردیبهشت 1389, 14:42 عصر
مرسی اما جوابم رو نگرفتم . من میخوام یکی از کانکشن استرینگ ها به صورت پیش فرض در مسیر نصب برنامه تنظیم شده باشه . دوم: میخوام وقتی کاربر از طریق openfiledialog یک دیتابیس دیگه رو وارد برنامه میکنه کانکشن استرینگ تغییر پیدا کنه و برابر با مسیر وارد شده توسط کاربر بشه . بنابراین لازمه مقدار value که در مثالهای شما بیان شده بود برابر یه متغیر باشه که بعدا بشه مقدار دهی کرد .
یا اگه این روش اصولی نیست برنامه های حسابداری با چه روشی از کاربر مسیر دیتابیس رو میگیرن و نگهداری میکنن ؟بالاخره شاید یکی خواست دیتابیسش توی دایرکتوری ای غیر از برنامه باشه
میلاد قاضی پور
چهارشنبه 22 اردیبهشت 1389, 15:19 عصر
کاری شبیه این کد :
System.Configuration.ConfigurationSettings.AppSett ings.Set(KeyName, KeyValue);
r00tkit
چهارشنبه 22 اردیبهشت 1389, 17:02 عصر
پس با توجه به این کار مثلا اگه کار بر دیتابیس رو وارد کرد ان مسیر شه درغیر ان صورت مسر جاری برنامه
مثلا
OpenFileDialog d = new OpenFileDialog();
if (DialogResult.OK == d.ShowDialog())
sqlConnection.ConnectionString=con=@"Data Source=.\SQLEXPRESS;AttachDbFilename="+d.FileName+"@;Integrated Security=True;Connect Timeout=30;User Instance=True";
else
کانکشن استریگ پیش فرض
my string
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.