PDA

View Full Version : انتقال برنامه نوشته شده به سیستم مقصد



mostafa580
شنبه 16 اردیبهشت 1402, 12:43 عصر
سلام دوستان روزتون بخیر
ببخشید شاید سوال بنده ابتدایی باشه ولی از اونجا که تو زمینه سی شارپ تازه کار هستم این سوال رو میپرسم.
سوال بنده این هست که من برنامه ای نوشتم با بانک اس کیو ال و کانکشن هم بصورت زیر برقرار کردم
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=barbari;Integrated Security=True");

حالا برنامه خودم رو میخوام به سیستم مقصد انتقال بدم بهترین روش کدومه؟ و اینکه حتما باید رو سیستم مقصد اس کیو ال رو نصب کنیم و دیتابی رو اتچ کنیم؟
یا راه ساده تر هم وجود داره که طرف بتونه برنامه رو نصب کنه بدون چیزهای اضافه ؟
و اینکه آیا امکان داره برنامه و دیتابیس رو به روشی پرتابل کرد؟

خیلی لطف میکنین بنده رو راهنمایی کنید. با سپاس فراوان از دوستان

mostafa580
شنبه 16 اردیبهشت 1402, 20:37 عصر
از دوستان کسی محبت نمیکنه منو راهنمایی کنه؟

پرستو پارسایی
شنبه 16 اردیبهشت 1402, 21:16 عصر
پروژه خودتان را با یک نرم افزار ستاپ ساز به یک فایل اجرایی همراه با تمام پیشنیاز های پروژه خود تبدیل کنید . و در سیستم مقصد نصب کنید . دیتابیس و هر آنچه پروژه شما همراه داشته باشد ، میتواند نصب و با دستورات درون برنامه ای بصورت سایلنت بر روی سیستم هدف فقط با جند کلیک فعال سازی و قابل اجرا شوند. Advanced installer به نظر من یکی از بهترین ها هست

mostafa580
شنبه 16 اردیبهشت 1402, 21:35 عصر
محبت کردین پاسخ دادین.

بعد تنظیمات خاصی برای کانکشن نیازی نیست که داخل پروژه انجام بدم؟
واینکه موقع استفاده از ستاپ ساز تکلیف اس کیو ال چی میشه؟ اونم باید در قالب ستاپ بزارمش؟

پرستو پارسایی
شنبه 16 اردیبهشت 1402, 21:52 عصر
اطلاعات مناسبی درباره نوع دیتابیس ندادید ولی در مجموع نرم افزاری که معرفی کردم قابلیت نصب هر گونه بانک اطلاعاتی را دارد برای اتچ کردن دیتابیس دارای دستوراتی هست بسیار ساده ، فقط باید نوع دیتابیس و ورژن آن مشخص باشه تا برایتان نصب و اتوماتیک اتچ کند
در این نرم افزار پروژه را وارد می کنید و در بخش مربوط به دیتابیس ، بانک اطلاعاتی پروژه را وارد میکنید و با دستورات از پیش تعریف شده در نرم افزار ستاپ ساز و انتخاب نوع اسکیوال از لیست بانک های اطلاعاتی کل درخواست بصورت یک فایل اجرایی (Setup) در اختیارتان قرار میگیرد . آموزش Advanced installer را در همین سایت سرچ کنید

mostafa580
شنبه 16 اردیبهشت 1402, 21:57 عصر
دیتابیس که اس کیو ال سرور هست و چند جدول ساده داره و به روش زیر داخل برنامه کانکشن رو برقرار کردم یه یوزینگ usind system data sqlclaint و دستور:

SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=barbari;Integrated Security=True");

پرستو پارسایی
شنبه 16 اردیبهشت 1402, 22:03 عصر
اگر پروژه شما در حال حاضر با دیتابیس ارتباط دارد و به درستی کار میکند نیازی به تعریف کانکشن در ستاپ ساز ندارید فقط باید اسکیوال سرور را مشخص کنید چه ورژنی دارد و آیا اکسپرس هست یا خیر .

mostafa580
شنبه 16 اردیبهشت 1402, 22:33 عصر
خیلی لطف کردین وقت گذاشتین بنده رو راهنمایی کردین.

سپاس فراوان.

pixcel
چهارشنبه 10 خرداد 1402, 06:01 صبح
شما میتونید از SQLite استفاده کنید تا دیگه SQL Server رو در سیستم مقصد نصب نکنید

ShayanFiroozi
چهارشنبه 10 خرداد 1402, 08:29 صبح
سلام ،

البته اگر اصرار بر SQL هست میتونین از SQL LocalDB استفاده کنین ، فقط دقت کنین File Base هستش و فقط روی همون سیستم میتونین ازش استفاده کنین (در حالت LocalDB) ، نیازی به نصب SQL Server اصلی نداره فقط یه سرویس خیلی ساده و سبک نصب میکنه ، برای اطلاعات بیشتر عبارت C#‎‎‎‎‎ sql server localdb رو جستجو کنین.

گزینه دیگه LiteDB (https://www.litedb.org) هست که یک پروژه کاملا OpenSource بوده Contributer های زیادی ساپورتش میکنن و مدام به روز میشه ، کاملا با سی شارپ نوشته شده تا حدودی شبیه SQLite هستش با کمی Performance بهتر.

ShayanFiroozi
چهارشنبه 10 خرداد 1402, 08:35 صبح
دیتابیس که اس کیو ال سرور هست و چند جدول ساده داره و به روش زیر داخل برنامه کانکشن رو برقرار کردم یه یوزینگ usind system data sqlclaint و دستور:

SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=barbari;Integrated Security=True");

سلام مجدد ،

یه موضوعی که شاید اینجا مهم باشه Hard Code کردن رشته اتصال هستش ، معمولا این کار اصولی نیست ،

چون نرم افزار شما باید قابلیت اجرا در شرایط مختلف رو داشته باشه ، نباید یه رشته اتصال ثابت رو در کد خودتون کامپایل کنین ، شاید در یه سناریو سیستمی که نرم افزار روش نصب شده با سرور دیتابیس شما یکی نباشه ، بهتره که فایل متنی ساده برای ConnectionString در کنار برنامه قرار بدین که بتونین از اون بخونین ، اگر هم بحث امنیت مطرح هست رمزنگاریش کنین و هر وقت هم خواستین میتونین تغییرش بدین بدون اینکه دوباره نرم افزار رو کامپایل کنین.

Windows Registry هم یک گزینه دیگست.