LINQ kengaytmasi metodlari

|
LINQ kengaytmasi metodlari
|
bet | 2/5 | Sana | 08.09.2024 | Hajmi | 22,68 Kb. | | #270591 |
Bog'liq 15-maruza. LINQ texnologiyalari va operatorlari.LINQ kengaytmasi metodlari
.. in .. select sintaksisidan standartga qo'shimcha ravishda, LINQ so'rovini yaratish uchun IEnumerable interfeysi uchun aniqlangan maxsus kengaytma usullaridan foydalanishimiz mumkin. Odatda, ushbu metodlar operatorlar buyurtma beradigan LINQ bilan bir xil funktsiyalarni ta'minlaydi.
Masalan; misol uchun:
1
2
3
4
5
6
|
string[] teams = { "Бавария", "Боруссия", "Реал Мадрид", "Манчестер Сити", "ПСЖ", "Барселона"};
var selectedTeams = teams.Where(t=>t.ToUpper().StartsWith("Б")).OrderBy(t => t);
foreach(strings inselectedTeams)
Console.WriteLine(s);
|
teams.Where (t => t.ToUpper (). StartsWith ("B")). OrderBy (t => t) so'rov avvalgisiga o'xshash bo'ladi. Bu "Where and OrderBy" metodlarini zanjirlashdan iborat. Ushbu metodlar delegat yoki lambda ifodasini argument sifatida qabul qiladi.
Har bir kengaytma usuli LINQ operatorlari orasida analogga ega emas, ammo bu holda siz ikkala yondashuvni birlashtira olasiz. Masalan, biz standart linq sintaksisidan va tanlovdagi elementlar sonini qaytaradigan Count() kengaytma usulidan foydalanamiz:
1
|
intnumber = (from t inteams where t.ToUpper().StartsWith("Б") select t).Count();
|
Amaldagi LINQ kengaytmasi usullari ro'yxati
• Select: tanlangan qiymatlarning proektsiyasini belgilaydi
• Where: tanlov filtrini belgilaydi
• OrderBy: buyurtma buyumlarini ortish tartibida buyurtma qiladi
• OrderByDescending: buyumlarni kamayish tartibida buyurtma qiladi
• ThenBy: buyumlarni o'sish tartibida buyurtma qilish uchun qo'shimcha mezonlarni belgilaydi
• ThenByDescending: buyumlarni kamayish tartibida buyurtma qilish uchun qo'shimcha mezonlarni belgilaydi
• Join: ma'lum bir xususiyatga ko'ra ikkita to'plamni birlashtiradi
• GroupBy: elementlarni kalitlarga ko'ra guruhlaydi
• ToLookup: elementlarni lug'atga qo'shilgan holda kalitlarga ko'ra guruhlaydi
• GroupJoin: narsalarni birlashtirish va kalitlarga ko'ra guruhlashni amalga oshiradi
• Reverse: buyumlarni teskari tartibda joylashtiradi
• All: To'plamdagi barcha narsalarning ma'lum bir shartga javob berishini aniqlaydi
• Any: to'plamning kamida bitta elementi ma'lum bir shartga javob berishini aniqlaydi
•Contains: to'plamda ma'lum bir element mavjudligini aniqlaydi
•Distinct: nusxadagi nusxalarni to'plamdan olib tashlaydi
• Except: ikkita to'plamning farqini, ya'ni faqat bitta to'plamda yaratilgan elementlarni qaytaradi
• Union: ikkita bir hil to'plamlarni birlashtiradi
• Intersect: ikkita to'plamning kesishishini qaytaradi, ya'ni ikkala to'plamda ham uchraydigan elementlar
• Count: To'plamdagi ma'lum bir shartga javob beradigan elementlar sonini hisoblaydi
• Sum: yig'indagi raqamli qiymatlar yig'indisini hisoblaydi
• Average: to'plamdagi raqamli qiymatlarning o'rtacha qiymatini hisoblab chiqadi
• Min: minimal qiymatni topadi
• Max: maksimal qiymatni topadi
•Take: ma'lum miqdordagi narsalarni tanlaydi
•Skip: ma'lum miqdordagi narsalarni o'tkazib yuborish
• TakeWhile: shart to'g'ri bo'lsa, ketma-ketlik elementlari zanjirini qaytaradi
•SkipWhile: Belgilangan shartga mos kelguncha elementlarni ketma-ketlikda o'tkazib yuboradi va keyin qolgan elementlarni qaytaradi
• Concat: ikkita to'plamni birlashtiradi
• Zip: ma'lum bir shartga ko'ra ikkita to'plamni birlashtiradi
•First: to'plamdagi birinchi elementni tanlaydi
• FirstOrDefault: to'plamdagi birinchi elementni tanlaydi yoki sukut bo'yicha qaytaradi
• Single: to'plamning bitta elementini tanlaydi, agar to'plamda bir yoki bir nechta element bo'lsa, istisno qo'yiladi
• SingleOrDefault: to'plamdagi birinchi elementni tanlaydi yoki sukut bo'yicha qaytaradi
• ElementAt: ma'lum bir indeks bo'yicha ketma-ketlik elementini tanlaydi
• Last: to'plamdagi oxirgi narsani tanlaydi
• LastOrDefault: to'plamdagi so'nggi elementni tanlaydi yoki sukut bo'yicha qaytaradi
|
| |