استفاده از method syntax در یک عبارت query: همانطور که در Query Syntax and Method Syntax in LINQ (C#) توضیح داده شد، برخی عملکردهای query تنها با استفاده از method syntax توضیح داده می شوند. کد زیر نمره ی کلی هر Student را در توالی نمره محاسبه می کند و سپس روش Average() را روی نتایج query فرا می خواند تا نمره ی میانگین کلاس را محاسبه کند. به قرارگیری پرانتزها در اطراف عبارت query دقت داشته باشید. کد: var studentQuery6 = from student in students let totalScore = student.Scores[0] + student.Scores[1] + student.Scores[2] + student.Scores[3] select totalScore; double averageScore = studentQuery6.Average(); Console.WriteLine("Class average score = {0}", averageScore); // Output: // Class average score = 334.166666666667
تبدیل یا طرح در عبارت select: برای یک query خیلی متداول است تا یک توالی ایجاد کند که عناصر آن با عناصر در ترتیب های منبع متفاوت است. Query قبلی و اجرای لوپ را حذف کنید یا در مورد آن کامنت بدهید و آن را با کد زیر جایگزین کنید. دقت داشته باشد که query ترتیبی از رشته ها را ( نه دانشجویان) گزارش می دهد و این واقعیت در لوپ foreach منعکس می شود. کد: IEnumerable<string> studentQuery7 = from student in students where student.Last == "Garcia" select student.First; Console.WriteLine("The Garcias in the class are:"); foreach (string s in studentQuery7) { Console.WriteLine(s); } // Output: // The Garcias in the class are: // Cesar // Debra // Hugo </string> کد پیشین در این دستورالعمل نشان داد که میانگین نمره ی این کلاس 334 می باشد. برای تولید ترتیبی از Students که نمره ی کلی آنها بیشتر از میانگین کلاس می باشد، به همراه Student ID آنها، می توانید از یک نوع بدون نام در عبارت select استفاده کنید. کد: var studentQuery8 = from student in students let x = student.Scores[0] + student.Scores[1] + student.Scores[2] + student.Scores[3] where x > averageScore select new { id = student.ID, score = x }; foreach (var item in studentQuery8) { Console.WriteLine("Student ID: {0}, Score: {1}", item.id, item.score); } // Output: // Student ID: 113, Score: 338 // Student ID: 114, Score: 353 // Student ID: 116, Score: 369 // Student ID: 117, Score: 352 // Student ID: 118, Score: 343 // Student ID: 120, Score: 341 // Student ID: 122, Score: 368