PDA

View Full Version : دیتابیس در برنامه



programmable
سه شنبه 27 فروردین 1387, 15:57 عصر
من یه برنامه با C# نوشتم که از دیتابیس SQL استفاده میکنه . مشکلی که دارم در رابطه با انواع مختلف نصب این برنامه هستش . چه کار کنم که تنظیمات نرم افزار در سیستم های مختلف مشکل نداشته باشه . دیتابیس من در سرور نصب میشه که کامپیوتر های دیگه که در شبکه هستن به اون وصل میشن و از دیتابیس استفاده میکنن . البته گاهی ممکنه که نرم افزار در یک سیستم نصب بشه و دیتابیس هم در همون سیستم .
از چه راهی میتونم کاری کنم که بشه راحت نرم افزار رو در شرایط مختلف نصب کرد بدون اینکه نیاز به تنظیم کانکشن استرینگ و... برای هر کامپیوتر ی باشه.

من روش استفاده از db attach و اینا رو استفاده کردم ولی جواب نمیده. چون باز هم نیاز به تنظیم محلی داره . جستجو هم کردم ولی جواب هایی که یافتم تکه تکه بوده و مقطعی بوده که نیاز من رو پوشش نمی داده . نام سرور در هر کامپوتر ممکنه فرق کنه . خلاصه میخوام طوری بشه که برنامه ام خیلی راحت تو هر کامپیوتری نصب بشه . چه این کامپیوتر سرور باشه چه کلاینت .

از smart installer و set up project VS2005 هم استفاده میکنم و install shield رو باهاش کار نکردم . لطفا منو راهنمایی کنید.

hassan razavi
سه شنبه 27 فروردین 1387, 16:04 عصر
می تونید در فرم Login تون یک Texbox بعنوان نام سرور بگذارید که کاربر اگه DataBase روی سیستم خودش بود '.' و اگر روی سرور بود نام آنرا بنویسد و وقتی که Connection موفقیت آمیز Open شد ، نام سرور رو ذخیره کند بصورت پیش فرض در اجرای بعدی برنامه از اون استفاده کنه.

programmable
سه شنبه 27 فروردین 1387, 17:29 عصر
ممنون از جوابتون
ولی جواب خیلی کلی بود ! چجوری رو کامپیوتر ان رو به عنوان کانکشن استرینگ ذخیره کنم؟
متغیر کانکشن استرینگ که در setting برنامه هست قابل نوشتن نیست . اگر setting رو در پوشه output ذخیره کنم به صورت xml هم از نظر امنیت مشکل داره چکار کنم؟

gdevnb
سه شنبه 27 فروردین 1387, 19:14 عصر
اگه بحث امنیت برای شما خیلی مطرحه.
همون فایل Xml رو Encrypt کنید بعد تو حافظه بارگذاریش کنید و ازش استفاده کنید.

علیرضا مداح
سه شنبه 27 فروردین 1387, 19:35 عصر
سلام ،
دوست عزیز پیشنهاد بنده برای Deploy کردن نرم افزاری که از SQL Server استفاده میکند اینست که شما یک اسکریپت از دیتابیس تهیه نمایید (توسط ابزارهایی چون Mcrosoft SQL Server Database Publishing Wizard (http://www.microsoft.com/downloads/details.aspx?familyid=56E5B1C5-BF17-42E0-A410-371A838E570A) ) و به وسیله تعریف یک Custom Action در پروژه نصب یا به کارگیری ابزارهای دیگر ساخت ستاپ ، ساختار دیتابیس را هنگام نصب Generate نمایید:
CodeProject - Deploy Sql Server Databases Easily With an Installer Class (http://www.codeproject.com/KB/install/sqlscriptinstall.aspx)

در ضمن شما میتوانید ConnectionString را در فایل app.config ذخیره و آن را Protect نمایید:
CodeProject - Implementing Protected Configuratiuon in Windows Forms (http://www.codeproject.com/KB/security/ProtectedConfigWinApps.aspx)

به هر حال بسته به جزئیات دقیقتر پروژه و معماری نرم افزار روش های دیگری نیز به کار گرفته میشود .