سلام من تمام اطلاعات رو از طریق linq از دیتابیسم گرفتم
می خواهم 3 تا از آنها رو به صورت تصادفی بگیرم (بدون تکرار)و با یک رکورد اضافه کنم(که این رکورد هم باز از همان دیتابیس هست) تا بشن 4 تا
حالا می خواهم این 4 تا رو نمایش بدم (به صورت تصادفی)
می توانید راهنمایی کنید ؟
در اصل این کار برای ساخت کویز می خواهم 3 تا جواب نا درست و یک جواب درست (که خودم به اون 3 تا اضافه می کنم) برای همین می خواهم به صورت راندوم نمایش داده بشه
ایراد: می دونم که ممکن 2 تا جواب در یک سوال بدست بیاد نمی دونم باید چیکار کرد
سلام دو ست عزیز
شما میتوانید از دستور (عدد )Take تعداد رکود هایی که میخواهید نمایش دهید استفاده کنید و برای آن که به صورت تصادفی و غیر تکراری بیاورد از دستور OrderByDescending استفاده کنید
مثال:
db.Products.OrderByDescending(m => m.See).Take(3).ToList()
برای دریافت خروجی به صورت تصادفی میتونید از کد زبر استفاده کنید
var customers = db.Customers .Where(c => c.IsActive) .OrderBy(c => Guid.NewGuid()) .FirstOrDefault();
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)