Faqat tovar nomlari:
Nomi: Kofe Pele
Nomi: Nestle
Nomi: Avedov
Nomi: Hydrolife
Nomi: Fanta
Nomi: Premium
Biz yozgan yuqoridagi har ikki metod, ya’ni HarBiriniTanlash() va MahsulotlarNomlari() metodlari garchi ekranga turli ma’lumotlarni chop etsa-da, bu ma’lumotlarning hammasi barcha tovarlarga tegishli ma’lumotlardir. Lekin amaliyotda odatda ma’lum shartlarni qanoatlantiruvchi ma’lumotlarni shakllantirish talab etiladi. Buning uchun jami ma’lumotlardan u yoki bu shartni qanoatlantiruvchi ma’lumotlarning qismini ajratib olish kerak. Bu ishni amalga oshiruvchi so’rovlarni qism so’rovlar deb atash mumkin.
Misol uchun, tasarrufimizdagi tovarlarning 25 tadan ko’plarini tanlash qism so’rovini quyidagi metod orqali amalga oshirish mumkin:
static void SerobMahsulotlar(MahsulotInfo[] mahsulotlar)
{
Console.WriteLine("Serob tovarlar:");
// 25 tadan ko'p tovarlarni tanlash qism-so'rovi
var seroblari = from p in mahsulotlar
where p.OmbMiqdori > 25 select p;
foreach (MahsulotInfo s in seroblari)
{
Console.WriteLine(s.ToString());
}
} // SerobMahsulotlar
Bu metodni ham Main() metodining tegishli qismiga yozib, dasturni ishga tushirsak, metod ushbu natijani ekranga chop etadi
Serob tovarlar:
Nomi= Nestle, Tavsifi= Sut, 1 litr, Ombordagi Miqdori= 100
Nomi= Avedov, Tavsifi= Pista yog'i, 1 litr, Ombordagi Miqdori= 120
Nomi= Fanta, Tavsifi= Ichimlik, 1.5 litr, Ombordagi Miqdori= 100
Nomi= Premium, Tavsifi= Plitka shokolad, 100 gram, Ombordagi Miqdori= 73
Proyektsiyalash. Boshqa turga keltirish
Ma’lumotlarning yangi shakllarini biz ma’lumotlarning mavjud manbalaridan proyekstiyalash evaziga hosil qilishimiz ham mumkin. Faraz qilaylik, MahsulotInfo[] kirish parametrini qabul qilish va tovarlarning faqat nomini va tavsifini inobatga oladigan natijaviy tanlanma hosil qilish zarur bo’lsin. U holda yangi anonym toifani dinamik taqdim etadigan select operatorini ushbu metoddagi kabi aniqlashimizga to’g’ri keladi:
// Proyektsiyalash
static void NomVaTavsifiniOlish(MahsulotInfo[] mahsulotlar)
{
Console.WriteLine("Nomlar va Tavsiflar:");
Do'stlaringiz bilan baham: |