"> آموزش ساخت Dataset در سی شارپ

آموزش ساخت Dataset در سی شارپ

Dataset در سی شارپ

در این مقاله قصد آموزش چگونگی ایجاد یک table adapter و dataset در سی شارپ را دارم.در تجربه هایی که داشته ام ، dataset همیشه آزار دهنده بوده است ، زیرا برای تغییر یک خاصیت در دیتابیس باید جدول ها و table adapter ها را در فایل xds آپدیت کنید و نسخه ی جدید نرم افزار را انتشار دهید.

اما ایجاد connection و query ها با dataset آسان تر و سریع تر از ایجاد یک کلاس Connection Manager است ، (اما همیشه این بهترین کار نیست). اگر قصد ساخت یک برنامه ای دارید که شامل Data Grid View میشود و نیاز به افزودن ، آپدیت و حذف در آن است ؛ dataset بهترین گزینه است.

ایجاد dataset و table adapter

۱ چارچوب خود را ایجاد کنید.

۲ یک کنترل Data Grid View به برنامه اضافه کنید.

۳ یک فایل Dataset (xds) ایجد کنید.

Dataset در سی شارپ

۴ فایل xds خود را باز کنید.

۵ جدولی که قصد دارید با آن کار کنید را از قسمت Server explorer بکشید. جدول و table adapter شما ایجاد خواهد شد.

Dataset در سی شارپ

اگر بر روی table adapter کلیک کنید و مشخصات آن را چک کنید ، میتوانید ببینید که دستورات Select ، insert ، update و delete به صورت اتوماتیک تولید شده اند.

به این بستگی دارد که جدول تان چگونه طراحی شده است. زمانی که من با یک جدول بدون کلید اصلی کار میکردم ، دستور update تولید نشده بود. میتوانید دستور را اضافه کنید ، اما زمانی که موقع update یک مورد در data grid view پیش بیاید ، ممکن است مشکلاتی پیش بیاید و update صورت نگیرد.

اگر میخواهید با این مشکلات رو به رو نشوید ، یک کلید اصلی در هنگام طراحی به جدولتان در دیتابیس اختصاص دهید.

حال قطعه کدی که به صورت اتوماتیک در رویداد load form ایجاد شده است را چک کنید. این قطعه کد data grid view را با داده های موجود در جدولتان پر میکند.

۶ برای دسترسی به خصوصیات insert ، update و delete در کنترل data grid view خود بر روی دکمه ی کنترل option کلیک کنید.

Dataset در سی شارپ

۷ در همان قسمت ، Data Table و Data Source خود را انتخاب کنید.

Dataset در سی شارپ

حال ستون های data grid view به صورت اتوماتیک ساخته میشود. همچنین اشیای table adapter ، اشیای Binding Source و dataset .

Dataset در سی شارپ

همچنین در رویداد Load Form این کد برای پر شدن با اطلاعات جدول در هر بار لود شدن فرم window استفاده میشود.

private void dsDemo001GUI_Load(object sender, EventArgs e) 
        { 
// TODO: This line of code loads data into the 'dsDemoDatabase.People' table. You can move, or remove it, as needed. 
            this.peopleTableAdapter.Fill(this.dsDemoDatabase.People);            
        }

۸ حال باید یک button که برای حذف مورد انتخاب شده است ، اضافه کنید.

۹ حال وقت آن رسیده است که از رویداد برای آپدیت موارد از data grid view استفاده کنید. Grid view را انتخاب کنید و به بخش مشخصات رویداد بروید.

۱۰ رویداد CellEndEdit را ایجاد کنید.

۱۱ در قسمت کد به متد رویداد بروید و کد زیر را تایپ کنید.

private void dataGridView1_CellEndEdit(object sender, DataGridViewCellEventArgs e) 
   { 
         this.peopleTableAdapter.Update(dsDemoDatabase); 
}

حال برای تنظیم grid view خود احتیاج دارید که Add Row مربوط به Allow User را True کنید.

حال یک دکمه ی رویداد کلیک ایجاد کنید و کد زیر را در آن وارد کنید :

private void button1_Click(object sender, EventArgs e)
      {
            foreach (DataGridViewRow row in dataGridView1.SelectedRows)
                dataGridView1.Rows.Remove(row);
            this.peopleTableAdapter.Update(dsDemoDatabase);
      }

دکمه سطر انتخاب شده از data grid view را حذف میکند و سپس متد Update را از شئ Table Adapter فراخوانی میکند. همچنین خاصیت انتخاب grid view به انتخاب همه ی سطر ها تغییر میکند تا از بروز استثنا در زمان حذف سطر جلوگیری کند.

بسته به کاری که در حال انجامش هستید ، Table Adapter متد Update را فراخوانی میکند و جدول در Dataset و base را آپدیت میکند. اگر میخواهید سطر ها را حذف کنید ، delete query را فراخوانی کنید ؛ اگر میخواهید سطر اضافه کنید ، insert query را فراخوانی کنید و اگر میخواهید مقادیر سلول های موجود را تغییر دهید ، query Update را فراخوانی کنید.

جمع بندی

برای استفاده از Dataset در یک جدول باید یک جدول با طراحی در دیتابیس خود داشته باشید (شامل یک کلید اصلی و افزودن خودکار ستون).

Dataset میتواند مقدار زیادی از زمان برای ایجاد Connection string و queries را برایتان ذخیره کند.

امیدوارم از خواندن این مقاله لذت برده باشید !
موفق باشید !

  • پسورد: www.mspsoft.com
داریوش فرخی

داریوش فرخی هستم از سال 92 شروع به یادگیری برنامه نویسی و از سال 93 در بخش برنامه نویسی و تولید محتوای سایت mspsoft.com مشغول هستم. فعالیتم نیز بیشتر در زمینه های برنامه نویسی با سی شارپ و asp.net بوده است. اوقات فراغتم را هم غالبا با تماشای فیلم یا بازی های کامپیوتری پر میکنم .

نوشته‌های مرتبط

دیدگاه‌ها

*
*

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

    محمد قاسمی پاسخ

    با سلام
    من که متوجه نشدم !!!