متدهای Insert(), Update(), Delete() ایجاد شده توسط روش تاثیر مستقیم روی پایگاه داده، به ویژه برای جدولهایی با ستونهای زیاد، میتواند دست و پا گیر باشد.
برای ایجاد متدهای سفارشی به محیط طراحی DataSet بروید. روی TableAdapter راست کلیک کرده و Add Query را انتخاب کنید، در پنجره دوم میتوانیم مشخص کنیم که چه نوع کوئری میخواهیم ایجاد کنیم. اجازه دهید یک متد که یک محصول جدید اضافه کرده و ProductID آن را برگرداند، ایجاد کنیم. بنابراین گزینه INSRT را انتخاب میکنیم.
در مرحله بعدی CommandText مربوط به InsertCommand دیده میشود. به پایان این کوئری عبارت SELECT SCOPE_IDENTITY() را اضافه کنید، این عبارت مقدار ستون IDENTITY آخرین رکورد درج شده را برمیگرداند. مطمئن شوید که در پایان دستور INSERT و قبل از اضافه کردن عبارت، از نقطه ویرگول (;) استفاده کردهاید.
در پایان متد جدید را InsertProduct بنامید.
وقتی به محیط طراحی DataSet برمیگردید، میبینید که یک متد به نام InsertProduct به ProductsTableAdapter اضافه شده است. اگر متد جدید دارای پارامتر نباشد، ممکن است نقطه ویرگول پایان دستور INSERT را فراموش کرده باشید. متد InsertProduct را پیکربندی (Configure) کرده و نقطه ویرگول را اضافه نمایید. به طور پیش فرض، متدهای Insert به صورت None Query ایجاد میشوند، بدین معنی که تعداد سطرهایی که درج شدهاند را برمیگردانند. ولی ما میخواهیم این متد مقداری که کوئری برمیگرداند را برگرداند نه تعداد سطرها را. برای این منظور مشخصه ExecuteMode متد InsertProduct را به Scalar تغییر دهید.
وبلاگتون واقعا عالیه .الان واقعا به کطالبتون احتاج داشتم .خیلی خیلی مرسی