لغة الاستعلام المتكاملة (LINQ)
صفحة 1 من اصل 1 • شاطر
لغة الاستعلام المتكاملة (LINQ)
بسم الله الرحمن الرحيم
الاخوة الكرام السلام عليكم ورحمة الله وبركاتة و مرحبا بكم فى درس جديد ....موضوعنا اليوم يخص لغة الاستعلام المتكاملة (LINQ) الجديده من مايكروسوفت لعام 2008 و شرح كتابة الاستعلامات باستخدامها
أولا :نبذة عن لغة الاستعلام المتكاملة (LINQ) :
لغة الاستعلام المتكاملة Language Integrated Query و التى تختصر الى (LINQ) وهى أحد مكونات إطار عمل الدوت نت و تستخدم فى إمكانية الاستعلام عن البيانات للغات الدوت نت....كما تملك أيضا وصلات (ports) لاستخدامها في الجافا و البي إتش بي و الجافا سكريبت......حيث يوفر قدرات بسيطة وفعالة عند العمل مع كل أنواع البيانات...
يتيح لك LINQ الاستعلام عن البيانات في قاعدة بيانات كثيرة منها SQL Server أو في XML أو في صفائف الذاكرة memory arrays أو المجموعات collections أو مجموعة بيانات ADO.NET أو أى مصدر أخر بعيد أو محلي يدعم LINQ
ثانيا :بنية إستعلام LINQ
بناء جملة الاستعلام LINQ يشبه بناء جملة SQL لذلك، قد تجد الكثير من بناء الجملة مألوفا لك ..
تبدأ جملة إستعلام LINQ بالكلمة المحجوزة From و التى تعبر عن مصدر بيانات الاستعلام والمتغيرات المستخدمة للإشارة إلى كل عنصر في مصدر البيانات بشكل فردي والتى تسمى بمتغيرات النطاق أو متغيرات تكرارب ...على سبيل المثال نقوم ببناء الاستعلام التالي مصدر مجموعة بيانات العميل كـمتغير customers و متغير تكرار مسمى cust.....وذلك على النحو التالى :
- الكود:
Dim ueryResults = From cust In customers
ثالثا :عوامل تشغيل استعلام LINQ
1_جملة Where
يمكنك إضافة جملة Where لتصفية النتائج حسب شرط معين أو أكثر....و التعليمات البرمجية التالية يظهر مثال استعلام يتضمن جملة Where
- الكود:
ueryResults = From cust In customers
Where cust.Country = "USA"
- الكود:
Where cust.City = "London" And cust.Name = "Devon"
- الكود:
Where cust.City = "London" Or cust.City = "Paris"
وتستخدم فى تحديد شكل ومحتوى العناصر التي تم إرجاعها....فإن كنا فى المثال السابق قد قمنا بارجاع كافة العناصر أو البيانات من المصدر customers فيمكننا أستخدام جملة Select لتحديد عناصر معينة فقط دون الاخرى ....وذلك على النحو التالى :
- الكود:
ueryResults = From cust In customers
Where cust.Country = "USA"
Select cust.CompanyName, cust.Country
3_ جملة Join
يمكنك ايضا بناء جملة استعلام LINQ لتجميع عدة مصادر من البيانات ولكن باستخدام جملة Join ....وذلك على النحو التالى :
- الكود:
Dim query = From cust In customers _
Join ord In orders On
cust.CustomerID Equals ord.CustomerID _
Select cust.CompanyName, cust.CustomerID
- الكود:
ueryResults = From cust In customers, ord In orders
Where cust.CustomerID = ord.CustomerID
Select cust, ord
ويتم استخدمها لفرز البيانات التي تم إرجاعها في ترتيب معين .......ويتم أستخدامها على النحو التالى :
- الكود:
Dim londonCusts1 = From cust In customers
Where cust.City = "London"
Order By cust.Name Ascending
5_ جملة Aggregate
و تستخدم فى إجراء بعض العمليات الحسابية على كافة قيم العناصر التي يتم إرجاعها من قبل الاستعلام ....ويتم استخدامها على النحو التالى :
مثال لجمع عناصر الاستعلام
- الكود:
Dim customerTotals = From cust In customers
Aggregate order In cust.Orders
Into Sum(order.Total)
- الكود:
Dim customerMaxOrder = Aggregate order In orders
Into MaxOrder = Max(order.Total)
6_ الجملة Distinct
و تستخدم فى تنسيق نتيجة الاستعلام بحيث لا يجلب قيم مكررة .....و تستخدم على النحو التالى :
- الكود:
Dim cities = From item In Customers _
Select customer.City_
Distinct
و تستخدم لحساب قيمة معينه ووضعها فى متغير جديد .....على النحو التالى :
- الكود:
Dim discountedProducts = From prod In products _
Let Discount = prod.UnitPrice * 0.1 _
Where Discount >= 50 _
Select prod.ProductName, prod.UnitPrice, Discount
و التى تستخدم فى تجاهل عدد معين من العناصر و إعادة الباقى .....وتستخدم على النحو التالى :
- الكود:
Dim customerList = From cust In customers _
Skip 10
و التى تستخدم ايضا فى تجاهل عدد معين من العناصر و إعادة الباقى ولكن بشرط معين ....وتستخدم على النحو التالى :
- الكود:
Dim customerList = From cust In customers _
Skip While IsSubscriber(cust)
الى هنا نكون قد أنتهينا من فسهم اساسيات لغة الاستعلام المتكاملة (LINQ) فى دروس أخرى إن شاء الله تعالى سنقوم بعرض تفاصيل متقدمة عن تلك اللغة
تحياتى للجميع
أبوسجود- ......
- تاريخ التسجيل : 18/02/2011
المساهمات : 101
النقاط : 187
التقيم : 8
الجنس :
رد: لغة الاستعلام المتكاملة (LINQ)
جزاك الله خيرا ابو سجود
المبرمج الطموح- الاشراف
- تاريخ التسجيل : 18/02/2011
المساهمات : 207
النقاط : 368
التقيم : 17
الدولة :
الجنس :
رد: لغة الاستعلام المتكاملة (LINQ)
جزاك الله خيرا
أيمن الإبراهيم- ........
- تاريخ التسجيل : 19/03/2013
المساهمات : 251
النقاط : 398
التقيم : 1
الدولة :
الجنس :
رد: لغة الاستعلام المتكاملة (LINQ)
بدى امثلة اخى الكريم
RANA- .....
- تاريخ التسجيل : 01/08/2013
المساهمات : 79
النقاط : 124
التقيم : 3
الدولة :
الجنس :
رد: لغة الاستعلام المتكاملة (LINQ)
اشكرك اخي على الشرح المبسط للموضوع
ـــــــــــــــــــ التوقيع ــــــــــــــــــــ
NEXT- الادارة
- تاريخ التسجيل : 18/02/2011
المساهمات : 446
النقاط : 200660
التقيم : 28
الدولة :
الجنس :
| |
صفحة 1 من اصل 1
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى
أمس في 2:36 pm من طرف nadya
» شراء اغراض مستعملة بالكويت بأعلى سعر - الدليل
أمس في 2:21 pm من طرف nadya
» شراء اثاث مستعمل الجهراء - بأعلى سعر - الدليل
أمس في 2:05 pm من طرف nadya
» تركيب مخيمات الكويت - جودة عالية خصم 20 %- الدليل
أمس في 1:47 pm من طرف nadya
» اغتنم فرصة الحصول على مدافن للبيع بمساحات مختلفة فى كل مكان فى مصر - القاهرة الجديدة
أمس في 1:40 pm من طرف ندا عمر
» افضل موقع مقابر للبيع بالقاهرة الجديدة 20% خصم
أمس في 1:29 pm من طرف ندا عمر
» مقابر وادي الراحة للبيع بأفضل الأسعار بخصم 20%
أمس في 1:18 pm من طرف ندا عمر
» مقابر للبيع بالقاهرة الجديدة بتسهيلات في السداد | سما الاقصى للمقاولات
أمس في 1:15 pm من طرف ندا عمر
» شراء اثاث مستعمل الكويت - بأعلى سعر - الدليل
أمس في 1:11 pm من طرف nadya
» مقابر طريق العين السخنه للبيع 20% من سما الاقصى
أمس في 12:59 pm من طرف ندا عمر