به دست آوردن آخرین رکورد بازبینی شده در دیتابیس توسط Linq
چهارشنبه 22 خرداد 1392به دست آوردن آخرین رکورد بازبینی شده در دیتابیس توسط Linq <br/> فرض کنید رکوردی رو در دیتابیس ذخیره کردید و یا رکورد موجودی رو ویرایش کردید و می خواهید آخرین رکوردی که اصطلاحا مورد بازبینی قرار گرفته را در اختیار داشته باشید
فرض کنید رکوردی رو در دیتابیس ذخیره کردید و یا رکورد موجودی رو ویرایش کردید و می خواهید آخرین رکوردی که اصطلاحا مورد بازبینی قرار گرفته را در اختیار داشته باشید
فرض کنید بدین منظور ستونی در جدول مورد نظر قرار داده ایم و با هر تغییر در رکورد مقدار آنرا نیز تعویض کرده تا بدین ترتیب متوجه رکورد تغییر یافته شویم که در این مثال و در جدول Person ستونی با نام Revision ایجاد شده است
فرض کنید بدین منظور ستونی در جدول مورد نظر قرار داده ایم و با هر تغییر در رکورد مقدار آنرا نیز تعویض کرده تا بدین ترتیب متوجه رکورد تغییر یافته شویم که در این مثال و در جدول Person ستونی با نام Revision ایجاد شده است
بنابراین کوئری Linq متناسب با این سناریو به صورت زیر خواهد بود
- public IEnumerable<Person> GetPersons()
- {
- return from person in Person.All()
- group person by person.Id
- into personGroup
- from entity in personGroup
- where entity.Revision == personGroup.Max(x => x.Revision)
- select entity;
- }
- C#.net
- 4k بازدید
- 1 تشکر