PDA

View Full Version : سوال: ساخت یک فایل کانفیگ و نوشتن و خواندن از آن



parvizwpf
پنج شنبه 03 بهمن 1392, 10:32 صبح
سلام.
من میخوام برای برنامه ویندوزم یه کانکشن استرینگ تعریف و یه جا ذخیره کنم. یعنی خود کاربر اینکارو تو ستینگ برنامه انجام بده بعد بیاد تو یه فایل کانفیگ ذخیره کنه وبرنامه هر موقع اجرا میشه اون کانکشن استرینگ رو اعمال کنه برای ارتباط با دیتابیس(غیر از فایل app.config) یعنی یه جورایی custom config file. هر چی تو وب میگردم راه مناسبی پیدا نمیکنم. سوال دیگه اینه که آیا این روش خوب و امنی برای ذخیره کانکشن استرینگه یا خیر؟
سپاسگزار....

samsam_ninja
پنج شنبه 03 بهمن 1392, 20:42 عصر
سلام
چون ممکن که شما از یه یوزر برای اتصال به دیتا بیس استفاده کنید حتما محتویات اون فایل رو دیکیریپت و انکریپبت کنید که با باز شدن فایل به اون اطلاعات نشه دسترسی پیدا کرد ولی اینم در نظر داشته باشید که اون فایل رو به راحتی میشه پاک کرد!
مثلا شما یه بازی رو سیستمتون نصب میکنید و کافیه یکی از فایل های درون پوشش رو حذف کنید ، دیگه اون بازی عمل نمیکنه!
شما باید این امکان رو در برنامه قرار بدید که اگر اون فایل در دسترس نبود یا اطلاعات نا درستی در آن ذخیره شده بود بتوان آن را نوشت و تغییر داد ( از داخل برنامه ، که البته کاری نداره ) من این کار رو تو پروژه واقعی انجام دادم و بخوبی هم جواب داد.
موفق باشید!

parvizwpf
جمعه 04 بهمن 1392, 00:31 صبح
خیلی متشکر از توضیحات ... بله با حرفاتون موافقم ولی من دنبال یک نمونه کار یا کد هستم نمیتونید منو راهنمایی کنید ؟ فایل رو چطور ایجاد کرده و چطور read-write میکنید؟ این رو میخوام بدونم. راستی اینم بگم سولوشن من دارای دو پروژه هست یکی پروژه presentation و یکی لایه data. حالا چطور کد ساخت فایل رو توی کانفیگی قرار بدم در پرزنتیشن در صورتی که بتونم توی لایه دیتا کانکشن استرینگ رو تغییر بدم؟

samsam_ninja
جمعه 04 بهمن 1392, 11:51 صبح
اینکه چطور یه فایل رو بخونی یا بنویسی با اینکه منطق این کارت چی باشه فرق میکنه داداش!
واسه خواندن و نوشتن در فایل از system.IO استفاده کن که دو تا کلاس داره StreamWriter و StreamReader
واسه منطق کارت هم باید برنامت رو ببینم ، شما میتونی یه فرمی یا یه قسمتی از تنظیمات برنامه یا کلا یه قسمتی تو برنامت بزاری که بشه محتویات اون فایل رو تغییر داد یا اصلا بوجودش بیاری ( چون میخوای به صورت دستی استرینگ کانکشن رو تنظیم کنی دیگه ! ) میتونی یه فرم تنظیمات برای مسئول فنی برنامه قرار بدی! من خودم تقریبا تو 90% برنامه های تجاری یه قسمت دارم واسه مسئول فنی که با رمز و پس وارد میشه و به مشتری هم نمیدم! ( البته به اونایی که حالیشونه میدم )
بازم میگم کلا به برنامت بستگی داره.

parvizwpf
شنبه 05 بهمن 1392, 09:26 صبح
دوست عزیز تشکر از پاسخ اگر حرف من رو گرفته باشی من گفتم فایل کانفیگ . یعنی چی یعنی یه فایل xml بیس. حالا من تا حالا نشنیدم برای کار با xml از استریمهای system.io استفاده بشه. فکر کنم اصلا نیازی به کار با استریم ها نداره. راحت تر از این حرفها باید باشه. من کدی سمپل میخواستم، که فقط اطلاعات توی یه فایل کانفیگی غیر از app.config میریزه و میخونه همین. الان یه مشکلمم اینه که اون فایل کانفیگ توی یه پروژه غیر از پرزنتیشن هست یعنی توی پروژه دیتا یعنی لایه دیتای من حالا چطوری به اون کانفیگ توی اون پروژه از این پروژه دسترسی داشه باشم؟

samsam_ninja
شنبه 05 بهمن 1392, 21:36 عصر
اهان ! خب من اشتباه برداشت کردم!
نمی دونم والا ...!!!
یافتی به من هم بگو.
ممنون.

Mahmoud.Afrad
پنج شنبه 10 بهمن 1392, 18:09 عصر
میتونی از xml و یا دیتابیس هایی مثل sqlite استفاده کنی. در مورد هر کدوم جستجو کن.