استخدام LINQ لاستعلامات البيانات
بسّط استعلامات البيانات المعقدة باستخدام LINQ (Language Integrated Query)
استخدام LINQ لاستعلامات البيانات درس مجاني في C# Academy على CoddyKit. هذا هو الدرس 5 من أصل 5. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C# Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C# Academy 5 دروس في المجموع.
مقدمة إلى LINQ
استخدام LINQ لاستعلامات البيانات
مرحبًا بكم في الدرس التالي! ستتعرّفون في هذا الدرس على LINQ (Language Integrated Query)، وهي ميزة قوية في C# تبسّط الاستعلام عن البيانات ومعالجتها. لنبدأ!

ما المقصود بـ LINQ؟
ما المقصود بـ LINQ؟
LINQ (Language Integrated Query) هي مجموعة من الميزات في C# توفّر طريقة موحّدة للاستعلام عن البيانات من مصادر مختلفة، مثل المجموعات وقواعد البيانات وXML وغيرها.
نقطة مهمة: تدمج LINQ الاستعلام عن البيانات في صياغة C#، مما يجعل استخدامها بديهيًا وسهلًا.
استعلام LINQ أساسي
استعلام LINQ أساسي
تُكتب استعلامات LINQ باستخدام صيغة الاستعلام أو صيغة الأساليب. مثال:
نصيحة: استخدموا صيغة الاستعلام لسهولة القراءة، وصيغة الأساليب للمرونة.
using System;
using System.Linq;
class Program {
static void Main() {
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
// LINQ query syntax
var evenNumbers = from num in numbers
where num % 2 == 0
select num;
Console.WriteLine("Even Numbers:");
foreach (var num in evenNumbers) {
Console.WriteLine(num);
}
}
}
LINQ باستخدام صيغة الأساليب
LINQ باستخدام صيغة الأساليب
صيغة الأساليب هي طريقة أخرى لكتابة استعلامات LINQ باستخدام أساليب الامتداد. مثال:
نقطة مهمة: تُستخدم صيغة الأساليب عادةً للاستعلامات الأكثر تعقيدًا.
using System;
using System.Linq;
class Program {
static void Main() {
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
// LINQ method syntax
var evenNumbers = numbers.Where(num => num % 2 == 0);
Console.WriteLine("Even Numbers:");
foreach (var num in evenNumbers) {
Console.WriteLine(num);
}
}
}
LINQ مع المجموعات
LINQ مع المجموعات
تعمل LINQ بسلاسة مع مجموعات مثل القوائم. مثال:
نصيحة: استخدموا LINQ مع المجموعات لتبسيط مهام معالجة البيانات.
using System;
using System.Collections.Generic;
using System.Linq;
class Program {
static void Main() {
List<string> names = new List<string> { "Alice", "Bob", "Charlie", "David" };
// LINQ query to filter names
var filteredNames = names.Where(name => name.StartsWith("C"));
Console.WriteLine("Names starting with 'C':");
foreach (var name in filteredNames) {
Console.WriteLine(name);
}
}
}
ترتيب البيانات باستخدام LINQ
ترتيب البيانات باستخدام LINQ
استخدموا OrderBy وOrderByDescending لترتيب البيانات. مثال:
نقطة مهمة: تجعل LINQ عمليات الترتيب بسيطة وبديهية.
using System;
using System.Linq;
class Program {
static void Main() {
int[] numbers = { 5, 1, 8, 3, 9 };
// LINQ query to sort numbers
var sortedNumbers = numbers.OrderBy(num => num);
Console.WriteLine("Sorted Numbers:");
foreach (var num in sortedNumbers) {
Console.WriteLine(num);
}
}
}
تحدي تدريبي
تحدي تدريبي
أنشئوا برنامجًا يرشّح قائمة من المنتجات حسب السعر، ويرتّبها حسب الاسم، ويعرض النتائج باستخدام LINQ. مثال:
using System;
using System.Collections.Generic;
using System.Linq;
class Program {
static void Main() {
var products = new List<Product> {
new Product { Name = "Laptop", Price = 1000 },
new Product { Name = "Phone", Price = 500 },
new Product { Name = "Tablet", Price = 300 }
};
// LINQ query to filter and sort products
var filteredProducts = products
.Where(p => p.Price > 400)
.OrderBy(p => p.Name);
Console.WriteLine("Filtered and Sorted Products:");
foreach (var product in filteredProducts) {
Console.WriteLine($"{product.Name}: ${product.Price}");
}
}
}
class Product {
public string Name { get; set; }
public double Price { get; set; }
}
أفضل الممارسات لاستخدام LINQ
أفضل الممارسات لاستخدام LINQ
إليكم بعض أفضل الممارسات:
- استخدموا LINQ لإنشاء استعلامات موجزة وسهلة القراءة.
- فضّلوا صيغة الأساليب للاستعلامات المعقدة.
- اجمعوا بين LINQ وتعبيرات lambda لإجراء عمليات فعالة على البيانات.
نصيحة: اختبروا استعلامات LINQ باستخدام بيانات مختلفة لضمان دقتها.
مراجعة LINQ
أحسنتم!
تهانينا! لقد تعلّمتم كيفية استخدام LINQ للاستعلام عن البيانات ومعالجتها باستخدام C#. بهذا نختتم فئة "التعامل مع الملفات والبيانات". لننتقل إلى تحديات جديدة!

الأسئلة الشائعة
هل درس «استخدام LINQ لاستعلامات البيانات» مجاني؟
نعم — نص درس «استخدام LINQ لاستعلامات البيانات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C# Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C# Academy 5 دروس في المجموع.
ماذا ستتعلم في «استخدام LINQ لاستعلامات البيانات»؟
بسّط استعلامات البيانات المعقدة باستخدام LINQ (Language Integrated Query) تتمرن على C# Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ C# Academy؟
لا تُشترط خبرة سابقة. C# Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 5 من أصل 5.
كم من الوقت يستغرق درس «استخدام LINQ لاستعلامات البيانات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس C# Academy هذا؟
نعم. كل درس في C# Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- قراءة الملفات وكتابتها
- العمل مع JSON وXML
- فهم معالجة الاستثناءات
- العمل مع قواعد البيانات
- استخدام LINQ لاستعلامات البيانات