رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
درج رکورد با استفاده از LINQ
#1
برای درج یک رکورد جدید با استفاده از LINQ فقط کافیست که یک شئ جدید از نوع کلاسی که به جدول مورد نظر شما Bind شده است، ایجاد کنید و سپس آن را به فیلدی که از نوع <Table<T در کلاس اصلی برنامه (کلاسی که از DataContext ارث بری می­کند) اضافه کنید. با انجام این کار اطلاعات به صورت موقت در جدول موجود در برنامه درج می­شود. برای درج کامل ونهایی اطلاعات اضافه شده می­بایست متد ()SubmitChanges که در کلاس DataContext قرار دارد را فراخوانی کنید.

به عنوان مثال کدهای زیر یک رکورد جدید به جدول Person اضافه می­کند.
کد پی‌اچ‌پی:
Person person = new  Person();

person.FirstName txtName.Text;

person.LastName txtFamily.Text;

people.People.Add(person);

people.SubmitChanges(); 

توجه داشته باشید که در رکورد جدید مقداری برای فیلد ID در نظر گرفته نشده است؛ زیرا این فیلد باید توسط پایگاه داده مقداردهی گردد. در اینجا یکی دیگر از مزیت­های LINQ به چشم می­خورد. پس از اینکه متد ()SubmitChanges فراخوانی گردید اطلاعاتی که توسط پایگاه داده تولید می­شود به شئ موجود در برنامه برگشت داده می­شود. بنابراین برای اعلام شماره شناسایی افراد لازم نیست که با دیگر یک پرس و جو بر روی جدول اعمال شود. زیرا در همان رکوردی که اطلاعات فرد قرار دارد شماره شناسایی وی نیز قرار گرفته است.

البته اگر از خصوصیت Log در کلاس DataContext برای بدست آوردن دستوری که برای پایگاه داده ارسال شده است، استفاده کنید، مشاهده خواهیم کرد که پس از دستور Insert یک دستور Select استفاده شده است و در آن با استفاده از تابع ()Scope_Identity آخرین مقداری که به فیلدی که خصوصیت Identity آن true است برگشت داده می­شود.

منابع مورد استفاده :

· کتاب "LINQ در C# 2008" تالیف گروه واژه

· Ebook های موجود در سایت PersiaDevelopers
[عکس: <a href=www.Mojsazan.com.gif]" class="mycode_img" />
پاسخ
سپاس شده توسط database


موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  امکانات LINQ مهرداد عباسی 2 5,921 10-11-2011, 11:53 AM
آخرین ارسال: مهرداد عباسی
  حذف رکورد­ها LINQ مهرداد عباسی 0 4,337 12-16-2009, 01:29 AM
آخرین ارسال: مهرداد عباسی
  ویرایش رکوردها LINQ مهرداد عباسی 0 4,167 12-16-2009, 01:28 AM
آخرین ارسال: مهرداد عباسی
  ارتباط LINQ با SQL مهرداد عباسی 0 4,528 12-16-2009, 01:26 AM
آخرین ارسال: مهرداد عباسی
  مروری بر LINQ در C# 2008 مهرداد عباسی 0 4,275 12-16-2009, 01:20 AM
آخرین ارسال: مهرداد عباسی

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان