عملگرهای Generation در Linq
آموزش Linq --> عملگرهای Generation : در این مقاله ، در مورد عملگرهای تولید مجموعه مانند Range و Repeat به همراه مثال صحبت خواهیم کرد .

در مقاله قبل ، عملگرهای Element در LINQ را مورد بررسی قرار دادیم . در این مقاله میخواهیم عملگرهای Generation که برای تولید مجموعه بکار میروند را بررسی کنیم .

بر خلاف عملگرهایی که تا کنون بررسی کردیم ، Generation Operator ها ، برای تولید مجموعه بکار میروند . دو تا عملگر دارد . بنام های Range و Repeat .

 

عملگر Range :

با یک مثال این عملگر را توضیح می دهیم :

                              
public static void Range()
{
    var numbers =
                    from number in Enumerable.Range(100, 50)
                    select new { Number = number, OddEven = number % 2 == 1 ? "odd" : "even" };
    foreach (var number in numbers)
    {
        Console.WriteLine("The number {0} is {1}.", number.Number, number.OddEven);
    }
}

توضیح : توسط دستور Range(100,50) گفتیم که از عدد ۱۰۰ تا ۵۰ عدد بعد از آن در محدوده تعریفی ما قرار میگیرد . یعنی اعداد ۱۰۰ تا ۱۴۹ . در دستور select new دو متغیر جدید بنامهای Number و OddEven تعریف کردیم که Number همان عدد است و OddEven یکی از مقادیر Odd یا Even می باشد . یعنی اعداد زوج و فرد بین ۱۰۰ تا ۱۴۹ رامشخص کرده و در حلقه foreach نمایش می دهیم .

 

عملگر Repeat :

برای تکرار عنصر دلخواه ما به تعداد دلخواه . دو پارامتر می گیرد که اولی مقدار تکرارشونده دلخواه ما می باشد و دومی تعداد تکرار شدن آن :

                              
public static void Repeat()
{
    var numbers = Enumerable.Repeat("Mohtava.info", 10);
    foreach (var number in numbers)
    {
        Console.WriteLine(number);
    }
}

در خروجی تابع فوق ، عبارت Mohtava.info به تعداد ۱۰ بار تکرار می شود .

در مقاله بعد در مورد عملگرهای Quantifier صحبت خواهیم کرد .