به دست آوردن آخرین رکورد بازبینی شده در دیتابیس توسط Linq

چهارشنبه 22 خرداد 1392

به دست آوردن آخرین رکورد بازبینی شده در دیتابیس توسط Linq <br/> فرض کنید رکوردی رو در دیتابیس ذخیره کردید و یا رکورد موجودی رو ویرایش کردید و می خواهید آخرین رکوردی که اصطلاحا مورد بازبینی قرار گرفته را در اختیار داشته باشید

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

فرض کنید بدین منظور ستونی در جدول مورد نظر قرار داده ایم و با هر تغییر در رکورد مقدار آنرا نیز تعویض کرده تا بدین ترتیب متوجه رکورد تغییر یافته شویم که در این مثال و در جدول Person ستونی با نام Revision ایجاد شده است

بنابراین کوئری Linq متناسب با این سناریو به صورت زیر خواهد بود


  1. public IEnumerable<Person> GetPersons()
  2.         {
  3.             return from person in Person.All()
  4.                    group person by person.Id
  5.                    into personGroup
  6.                    from entity in personGroup
  7.                    where entity.Revision == personGroup.Max(x => x.Revision)
  8.                    select entity;
  9.         }

ایمان مدائنی

نویسنده 1299 مقاله در برنامه نویسان
  • C#.net
  • 4k بازدید
  • 1 تشکر

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید