קטגוריות
C#

איך לסדר רשימה מסוג IQueryable בצורה רנדומלית או על פי משתנה

באחת המשימות שלי התבקשתי לסדר רשימה מסוג IQueryable בצורה רנדומלית (Random). הדרך הפשוטה לעשות זאת היא באמצעות Linq והיא נעשית באמצעות שורה אחת בלבד.

נניח שיש לי אובייקט שמייצג רשימה של מאמרים. לדוגמא:

IQueryable<Article> list

אוכל לסדר אותו בצורה רנדומלית כך:

list = list.OrderBy(article => Guid.NewGuid());

בהזדמנות זו אסביר גם איך לסדר אותו על פי אחד הפרמטרים של הקלאס (Class) בשם Article.

נניח שיש ב-Class זה את המשתנה PublishDate. במידה וארצה לסדר בסדר עולה אכתוב זאת כך:

list = list.OrderBy(article => article.PublishDate);

באופן דומה ניתן לסדר זאת בסדר יורד על ידי שינוי OrderBy ל- OrderByDescending כך:

list = list.OrderByDescending(article => article.PublishDate);
שתף:

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *