تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مثال على Linq To Object واستخدام استعلامات Linq متداخلة
#1
كاتب الموضوع : samerselo


كود :
Dim chbx = From b In (From a In Me.GroupBox2.Controls _
Where TypeOf a Is CheckBox Select a) _
Where b.checked = True Order By b.name Select Mid(b.name, b.name.length - 1)

Dim lbl = From f In Me.GroupBox2.Controls _
Where TypeOf f Is Label _
And chbx.ToArray().Contains(Mid(f.name, f.name.length - 1)) _
Order By f.name Select f
لا حظ في الاستعلام الأول كيف انني استخدت استعلام ثاني بين القوسين ضمن الاستعلام الأول وذلك كي أحصل على النتيجة التي أرغب بها مع الانتباه إلى امكانية تعشيش الاستعلامات بدون حدود

لاحظ أيضا في الاستعلام الثاني كيف أنني استخدمت نتيجة الاستعلام الأول المركب ضمن قسم شرط Where من أجل الحصول على النتيجة التي أرغب بها


هناك إمكانية أيضا لدمج الاستعلامين في استعلام واحد أيضا ... فهل يمكنك عزيزي قارئ هذا الموضوع أن تقوم بهذا بشكل صحيح؟؟؟؟؟؟؟؟؟؟

طبعا يمكنك الرجوع إلى مقالاتي بخصوص Linq أو كتابي حيث ضمنته دورة Linq كاملة إن واجهت صعوبة في فهم بعض النقاط
}}}}
تم الشكر بواسطة:
#2
كاتب المشاركة : Marwan

حسب ما فهمت من الاستعلام فنحن نريد استخراج الأدوات من داخل أداة GroupBox التي من نوع Label حيث آخر حرف من اسم الليبل مساوي لآخر حرف من اسم أي أداة CheckBox موجودة داخل الـGroupBox حيث الخاصية Checked للأداة CheckBox الأخيرة تساوي True.

هذا ما توصلت اليه:


كود :
Dim controlsWithSameNameEnding = _
From CheckBox As CheckBox In (From c In Me.GroupBox2.Controls Where TypeOf c Is CheckBox Select c), _
Label As Label In (From l In Me.GroupBox2.Controls Where TypeOf l Is Label Select l) _
Where CheckBox.Checked = True AndAlso Mid(Label.Name, Label.Name.Length - 1) = Mid(CheckBox.Name, CheckBox.Name.Length - 1) Order By CheckBox.Name _
Select CheckBox, Label
الاستعلام يعيد كان من نوع IEnumerable Of Label
يمكن الاستغناء عن الدالة Mid بالدالة Substring للفئة String


كود :
Dim controlsWithSameNameEnding = From CheckBox As CheckBox In (From c In Me.GroupBox2.Controls Where TypeOf c Is CheckBox Select c), _
Label As Label In (From l In Me.GroupBox2.Controls Where TypeOf l Is Label Select l) _
Where CheckBox.Checked = True AndAlso Label.Name.Substring(Label.Name.Length - 1) = CheckBox.Name.Substring(CheckBox.Name.Length - 1) Order By CheckBox.Name _
Select CheckBox, Label
}}}}
تم الشكر بواسطة:
#3
كاتب المشاركة : samerselo

رائع اخ مروان منتظر بقية الاخوان - يوجد العديد من الحلول لايوجد حل وحيد لسؤال برمجة

مع ملاحظة بسيطة وهي ان اخر حرفين هما ترقيم لـ Label و CheckBox وأريد تنفيذ أمر خاص على محتويات Label التي توافق تحكمات CheckBox التي قيمتها True والتي تمتلك نفس الترقيم الاستعلام هدفه هو الحصول على تلك التحكمات من نوع Label وتنفيذ العملية عليها فيما بعد باستخدام حلقة For Each

تخيل هذه العملية لو أنك تريد تنفيذها باستخدام IF !!!!
}}}}
تم الشكر بواسطة:
#4
كاتب المشاركة : samerselo

وهذه طريقتي في حل المسألة

كود :
Dim lbl = From f In Me.GroupBox2.Controls _
Where TypeOf f Is Label _
And (From b In (From a In Me.GroupBox2.Controls _
Where TypeOf a Is CheckBox Select a) _
Where b.checked = True Order By b.name _
Select Mid(b.name, b.name.length - 1)).ToArray().Contains(Mid(f.name, _
f.name.length - 1)) Order By f.name Select f
لاحظ أن هذا الاستعلام يحتوي على كلا الاستعلامين الموجودين في بدابة الموضوع

آرجو أن أكون قد أوصلت الفكرة بشكل جيد
}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  Microsoft Report using LINQ TO SQL Abu Ehab 1 95 05-05-17, 11:27 AM
آخر رد: sendbad100
Exclamation سؤال في LINQ a_abdullah 3 159 25-03-17, 11:03 PM
آخر رد: khodor1985
  عملية البحث من خلال تقنية linq khodor1985 1 452 12-03-17, 07:29 PM
آخر رد: حريف برمجة
  الدرس الرابع : Linq To SQL khodor1985 6 799 10-03-17, 11:12 AM
آخر رد: عماد السيد
  البحث عن كلمة داخل ملف نصي باستخدام تقنية Linq Sajad 5 1,719 09-12-16, 09:05 AM
آخر رد: اجيسك
  LINQ _ My reference Will be here أبو عمر 8 882 09-12-16, 09:03 AM
آخر رد: اجيسك
  تصميم فاتورة مبيعات بتقنية Linq khodor1985 7 1,089 16-11-16, 01:27 PM
آخر رد: Amir_alzubidy
  ADO.NET VS LINQ khodor1985 1 520 13-06-16, 04:12 AM
آخر رد: hitman48
  DataGridView Paging LINQ TO SQL Abu Ehab 5 665 08-06-16, 05:18 PM
آخر رد: Abu Ehab
  LINQ TO DataSet & XML Files Abu Ehab 10 1,938 02-06-16, 11:40 AM
آخر رد: CLARO

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم