درخواست های ارتباط
جستجو
لیست دوستان من
صندوق پیام
همه را دیدم
  • در حال دریافت لیست پیام ها
صندوق پیام
رویدادها
همه را دیدم
  • در حال دریافت لیست رویدادها
همه رویدادهای من
دوره های مرتبط
دوره آموزشی ساخت ربات تلگرام
مدرس: taghandiki
این دوره را در 8 قسط خریداری کنید
ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
مدرس: مهدی عادلی
این دوره را در 2 قسط خریداری کنید
دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
مدرس: حسین احمدی
این دوره را در 17 قسط خریداری کنید
دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
مدرس: taghandiki
این دوره را در 20 قسط خریداری کنید
دوره آموزشی برنامه نویسی حرفه ای پایتون به زبان ساده
مدرس: حسین احمدی
این دوره را در 23 قسط خریداری کنید
دوره آموزشی برنامه نویسی اندروید با زبان جاوا به زبان ساده
مدرس: مهدی عادلی
این دوره را در 27 قسط خریداری کنید
دوره آموزشی طراحی رابط کاربری با JavaFX
مدرس: hharddy
این دوره را در 13 قسط خریداری کنید
دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
مدرس: dr-iman
این دوره را در 13 قسط خریداری کنید
دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
مدرس: مهدی عادلی
این دوره را در 17 قسط خریداری کنید
دوره آموزشی Exploit نویسی به زبان Perl
مدرس: dr-iman
این دوره را در 7 قسط خریداری کنید
0 نظرات
71 بازدیدها
اگه مطالب وبسایت آی تی پرو رو خونده باشید قطعا دوره های طراحی بانک اطلاعاتی Sql server و تکنولوژی Ado.net رو دیدید. این دوره آموزش هم دقیقا مثل اون هاست اما با این تفاوت که فقط ساخت و اتصال دیتابیس به سی شارپ گفته نمی شه، بلکه تمرکز ما روی نحوه ی انجام این کاره. توی این سری آموزش ها از همون مفاهیم بهره گرفته میشه و پیشنهاد میکنم ابتدا سری به sql server، ado.net و oop بزنید.
یکی از بهترین روش های طراحی نرم افزار، بهره گیری از معماری 3 لایه است. توی این معماری، ما 3 لایه مرتبط به هم داریم. اولین لایه همون فرم یا صفحه ی برنامه ماست. یعنی همون چیزی که کاربر می بینه و از طریق اون با برنامه ارتباط بر قرار می کنه. لایه دوم Business نام داره. این لایه خواسته های فرم رو به لایه ی سوم یعنی Data منتقل می کنه و لایه سوم با توجه به اطلاعات ورودی از Business با دیتابیس ارتباط بر قرار می کنه. و چیزی هم هست به نام DataObject که یکسری اطلاعات داخلش ریخته میشه. شاید این اوایل درست متوجه نشید یا کاربردش رو درک نکنید اما یه ذره که جلو تر بریم می فهمید.

اول از همه باید یه Connection بسازیم. برای این کار کلاسی به اسم Connection ایجاد کنید. برای اینکه کلاس سبک بشه همه ی using هارو پاک می کنیم و فقط دو تا using مورد نیازمون رو می نویسیم. یعنی دو تا using زیر:
using System.Data;
using System.Data.SqlClient;
حالا مثل قبل باید یه کانکشن بسازیم. سطح دسترسی اون رو باید Private قرار بدیم چون نیازی به دسترسی به اون داخل لایه های دیگه برنامه نداریم. مقدار اون رو new نمی کنیم و با null قرار می دیم. مثل زیر:
private SqlConnection SqlCon = null;
حالا باید ConnectionString رو به اون بدیم. برای به دست اووردن ConnectionString دیتابیس به پنجره ی Data Sources مراجعه می کنیم. اگه این پنجره رو ندارید از منوی بالای ویژوال استودیو، وارد View شوید و از آیتم های داخل Other Windows گزینه ی Data Sources رو انتخاب کنید تا این پنجره زیر ToolBox ظاهر بشه. حالا روی Add new database کلیک کنید. داخل پنجره ی باز شده گزینه ی Database رو انتخاب می کنیم و روی Next کلیک می کنیم. در مرحله ی بعد Dataset رو انتخاب می کنیم و به مر حله ی بعد میریم. الآن روی دکمه ی New Connection کلیک می کنیم. به طور پیشفرض نوع دیتابیس روی Microsoft Access Database (OLEDB) تنظیم شده. اما ما با دیتابیس Sql server کار داریم. پس روی Change کلیک می کنیم و Microsoft SQL Server رو انتخاب می کنیم. این هارو توی مطالب دیگه ی سایت آی تی پرو می تونید مفصل ببینید به همین دلیل زود رد می شم و زیاد توضیح نمی دم. توی قسمت Server name نام سروری که دیتابیسمون روش هست رو باید وارد کنیم. دیتابیس ما روی سیستم خودمونه پس عبارت localhost یا یک نقطه رو وارد می کنیم. در قسمت Connect to database اسم دیتابیسمون رو انتخاب می کنیم که برای ما DBtest هست. بعد از انتخاب دیتابیس روی Ok کلیک می کنیم. حالا دوباره پنجره ی اول که New Connection توش بود نمایش داده میشه.
روی علامت + کلیک می کنیم و ConnectionString رو کپی می کنیم.

حالا ما از طریق App.config اقدام به معرفی کانکشن استرینگ می کنیم. برای اینکه به اون فایل وارد بشیم، باید به پنجره ی Solution بریم و App.config رو باز کنیم. اوه! با کد های xml روبه شدیم. خونسردیمون رو حفظ می کنیم و تگ ConnectionStrings رو می سازیم. به صورت زیر:
  <connectionStrings>

  </connectionStrings>
داخل این تگ هر تعداد ConnectionString که بخوایم رو می تونیم قرار بدیم. ما فعلا یه دونه داریم. پس یک تگ دیگه به اسم add ایجاد می کنیم. این تگ چند تا خصوصیت داه که باید تما اونا رو تنظیم کنیم. اولیش name هست که اسم کانکشن استرینگ خودمون رو داخل قرار میدیم. می زاریمش SqlConnection. هر چیزی می تونیم قرار بدیم. جالا خاصیت دوم یعنی ConnectionString رو مقدار دهی کنیم. ما همون چیزی که ابتدا کپی کردیم رو قرار میدیم.
  <connectionStrings>
    <add name="SqlCon" connectionString="Data Source=.;Initial Catalog=DBtest;Integrated Security=True"/>
  </connectionStrings>
کل فایل App.config ما به صورت زیر شد:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="SqlCon" connectionString="Data Source=.;Initial Catalog=DBtest;Integrated Security=True"/>
  </connectionStrings>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
</configuration>
حالا بر می گردیم به کلاس Connection که قبلا ساختیم. داخل این کلاس باید یک بار Connection رو باز کنیم بعد ببندیم. اما این دو تا کار باید جدا گونه باشه. چون ابتدا باید باز کنیم و کامند یا آداپتور رو به اون متصل کنیم و در آخر ببندیمش. بنابراین نیاز به دو تا متد داریم تا بتونیم جداگونه به باز و بسته کردنش دسترسی داشته باشیم. یعنی یک متد برای باز کردن و یک متد برای بستن کانشن. ابتدا متد باز کردن کانکشن رو می نویسیم. سطح دسترسی اون رو Public قرار میدیم چون از لایه های دیگه باید بهش دسترسی داشته باشیم. نوعش رو هم SqlConnection میذاریم چون خروجیش باید SqlConnection باشه. به صورت زیر:
public SqlConnection OpenSqlCon()
{

}
برای اینکه ConnectionString رو بدیم به کانشکشن خودمون، باید بهش آدرس اون رو داخل فایل App.config بدیم. ابتدا یک متغیر از نوع رشته یا string تعریف می کنیم. مقدارش رو قراره همون کانکشن استرینگ تعریف شده بدیم. پس نیاز به یک رفرنس جدید داریم که پیشفرض داخل برنامه اضافه نشده. بنابراین از طریق منوی Solution، روی قسمت Refereces کلیک راست می کنیم و روی Add Reference کلیک می کنیم. داخل پنجره ی باز شده عبارت Configuration رو جست و جو می کنیم و رفرنس نمایش داده شده رو تیک می زنیم و اوکی می کنیم تا اضافه شه. حالا میریم سراغ استرینگمون و اسمش رو StrCon میزاریم. بعد برای معرفی ConnectionString عبارت زیر رو جلوش قرار میدیم:
System.Configuration.ConfigurationManager.ConnectionStrings["SqlCon"].ConnectionString;
به جای کلمه ی SqlCon که داخل دابل کوتیشن قرار داره می تونیم اسم هر ConnectionString دیگه که داخل App.config تعریف کردیم رو قرار بدیم. الآن استرینگ StrCon برابر شده با ConnectionString شده. حالا اون کانکشنی که قبلا ساختیم رو new می کنیم و StrCon رو بهش میدیم.
SqlCon = new SqlConnection(StrCon);
حالا اون رو باز می کنیم و return می کنیم. مثل زیر:
public SqlConnection OpenSqlCon()
{
    string StrCon = System.Configuration.ConfigurationManager.ConnectionStrings["SqlCon"].ConnectionString;
    SqlCon = new SqlConnection(StrCon);
    SqlCon.Open();
    return SqlCon;
}
الآن می تونیم با فرا خوانی این متد از هر جای دیگه ی برنامه کانکشن رو باز کنیم. اما دیگه نمی تونیم ببندیمش. همون طور که گفتم باید یه متد دیگه برای بستن اون بنویسیم تا موقع اتمام کار با فرا خوانیش کنیم. پس داخل این متد باید شرط بزاریم اگه کانکشن باز بود اون رو ببنده. به صورت زیر:
public void CloseSqlCon()
{
    if (SqlCon != null)
    {
        if (SqlCon.State == ConnectionState.Open)
        {
            SqlCon.Close();
        }
    }
}
الآن با فراخوانی متد OpenSqlCon از هر جای برنامه می تونیم اون رو باز کنیم و در آخر هر با CloseSqlCon اون رو ببندیم. ادامه آموزش رو در جلسات بعدی دنبال کنید.
برچسب ها
ردیف عنوان قیمت
1 برنامه نویسی 3 لایه رایگان
2 برنامه نویسی 3 لایه قسمت 2 رایگان
مطالب مرتبط

در حال دریافت اطلاعات

نظرات
هیچ نظری ارسال نشده است

    برای ارسال نظر ابتدا به سایت وارد شوید

    arrow