PDA

View Full Version : کانکشن استرینگ



yavari
دوشنبه 08 مرداد 1386, 08:27 صبح
سلام

چجوری میتونم کانکشن استرینگمو هنگامیکه از برنامه ستاپ ساختم تغییرش بدم ؟

ممنون

رها
دوشنبه 08 مرداد 1386, 09:22 صبح
اگر connectionString رو توی فایل config ذخیره کرده باشید می تونید اون فایل رو با notepad باز کنید و تغییرش بدید.

saeed_rezaei
دوشنبه 08 مرداد 1386, 20:20 عصر
من ذخیره در فایلهای جداگانه مثل txt یا ini رو پیشنهاد می کنم. برنامه هر گاه که اجرا می شه، بررسی می کنه که فایل رشته وجود داره یا نه. چنانچه رشته صحیح یافت شد، برنامه اجرا می شه در غیر اینصور همون ابتدای برنامه یه دیالوگ نشون می ده و اطلاعات جدید رو از کاربر می گیره.
برنامه های تحت شبکه روی تعداد زیادی ایستگاه نصب می شن. حالا فرض کنید بنا به دلایلی، آدرس سرور تغییر کرده، تنها کاری که کاربر باید انجام بده اینه که فایل رشته رو حذف کنه و برنامه رو دوباره اجرا کنه تا دیالوگ مورد نظر ظاهر بشه.
متاسفانه بیشتر برنامه هایی که نوشته می شن توسط کاربرایی اجرا می شن که بیشتر از اینکه نسبت به برنامه اطلاع داشته باشن، از برنامه می ترسن. لذا حذف کردن یه فایل و پاسخ دادن به چند تا پاسخ ساده خیلی ساده تر هست تا uninstall کردن برنامه و یا دستکاری کردن فایل config.
خیلی وقتها هم پیش می یاد که کاربر نمی دونه سرور یعنی چی، بانک چیه. دراین صورت کافیه که فایل مورد نظر رو از روی سیستم همکارش کپی بگیره رو دستگاه خودش.
اما استفاده از فایل config خوب هست اما یه مشکلش اینکه علاوه بر این اطلاع، موارد دیگه ای هم ممکنه در این فایل ذخیره شن. مثلا رنگ یا تصویر پس زمینه فرم. حال علاوه بر اینکه پیدا کردن و تغییر و یا کپی برداری از فایل config واسه کاربر سخت تره، اگه کاربر این فایل رو سیستم خودش کپی بگیره اون اطلاعات هم کپی گرفته می شن.

Sub Zero
دوشنبه 08 مرداد 1386, 20:26 عصر
توی قسمت تنظیمات برنامتون ، Item ی رو طراحی کنید که مسیر دیتا بیس رو از ورودی بگیره و براساس اون Connection String رو تعریف کنید و مقدارش رو در رجیستری ذخیره کنید .در این صورت نیازی به استفاده از فایل اضافی هم نیست .

programmermp
دوشنبه 08 مرداد 1386, 20:31 عصر
با سلام

البته راه حل دوستان کاملا درست هست

ولی بسیاری از برنامه های بزرگ رو من دیدم که از رجیستری برای این کار استفاده می کنند

Alireza_Salehi
دوشنبه 08 مرداد 1386, 20:52 عصر
با استفاده از Setting در 2005 با حداقل کد نویسی می تونید این کار را انجام بدید و این یک روش استاندارد برای ثبت کانکشن استرینگ در دات نت است.

mokh_pascal_sangesary
جمعه 05 بهمن 1386, 13:54 عصر
سلام
اول یه app.config به پروژه اضافه کن
(

add>new item> application configuration file)
داخلش یه کانکشن استرینگ تعریف کن :

<connectionStrings>
<add name="morgh_dari_proje.My.MySettings.ariyaConnectionStri ng"
connectionString="Data Source=(local);Initial Catalog=ariya;User ID=sa;Password=123"
providerName="System.Data.SqlClient" />
</connectionStrings>

توی تمام برنامت از همین کانکشن استرینگی که معرفی کردی استفاده کن.

حالا هر وقتی خواستی از این کانکشن استرینگ توی کد نویسی هم استفاده کنی میتونی از دستور زیر استفاده کنی :


My.Settings.Item("ariyaConnectionString")

برای تغییر این کانکشن استرینگ :


My.Settings.Item("ariyaConnectionString") = str_con
امیدوارم مفید باشه

mazoolagh
شنبه 06 بهمن 1386, 23:04 عصر
مگر مقادیر settings بصورت readonly نیستن؟

Dariuosh
یک شنبه 07 بهمن 1386, 07:50 صبح
اگه Scopeرو User ست کنی دیگه ReadOnly نیست

seeker
یک شنبه 07 بهمن 1386, 15:09 عصر
ولی استفاده از کانکشن استرینگ ستینگ برنامه از نظر امنیتی مشکل داره چون بصورت xml ذخیره میشه و هرکی این xml رو باز کنه تا دین کانکشن استرینگتو میخونه

Alireza_Salehi
یک شنبه 07 بهمن 1386, 18:38 عصر
ولی استفاده از کانکشن استرینگ ستینگ برنامه از نظر امنیتی مشکل داره چون بصورت xml ذخیره میشه و هرکی این xml رو باز کنه تا دین کانکشن استرینگتو میخونه

خوب رمزش کنید!

بعدش هم من گفتم Setting نه Config !
این دو تا با هم فرق دارند. Setting کامپایل می شود و فایل XML وجود ندارد که دیده بشود!

البته در هر دو حالت برای امنیت بیشتر می شود رمزش کرد.