كيفية القيام بما يلي: الوصول إلى السجلات في DataTables ذات صلة
عند الجداول في فئة البيانات فيما بينها، DataRelationكائن يمكنك إتاحة سجلات مرتبطة في جدول آخر. على سبيل المثال، مجموعة التي تحتوي على " Customersو Ordersالجداول يمكن أن تكون متوفرة.
يمكنك استخدام DataRelationكائن لتحديد السجلات ذات الصلة بواسطة استدعاء GetChildRowsأسلوب DataRowفي الجدول الأصلي؛ هذا الأسلوب بإرجاع صفيفة من السجلات التابعة ذات الصلة. أو يمكنك استدعاء GetParentRowأسلوب DataRowفي فرع الجدول؛ هذا الأسلوب بإرجاع واحدة DataRowمن الجدول الأصلي.
توفر هذه الصفحة تعليمات أمثلة على استخدام datasets مكتوب. ل معلومات تشغيل التنقل علاقات في مصنف datasets، راجع Navigating DataRelations (ADO.NET).
ملاحظة
إذا كنت تعمل في أحد تطبيقات Windows Forms واستخدام ميزات ربط بيانات إلى عرض بيانات، مصمم إنشاء النموذج قد بتوفير وظائف كافية للتطبيق الخاص بك. ل المزيد المعلومات، راجع الصفحات تشغيل قم بربط عناصر التحكم إلى البيانات في Visual Studio، وبشكل خاص كيفية القيام بما يلي: عرض بيانات ذات صلة في تطبيق Windows Formsو الإرشادات التفصيلية: عرض بيانات ذات صلة تشغيل نموذج Windows.
أمثلة تعليمات برمجية التالي شرح التنقل لأعلى و أسفل علاقات في datasets مكتوب. استخدامها لكتابة DataRows ( NorthwindDataSet.OrdersRow) وتم إنشاؤه FindByمفتاح أساسي (FindByCustomerID) إلى بحث صف الذي تريده وقم بإرجاع السجلات ذات الصلة. ترجمة الأمثلة و يعمل بشكل صحيح فقط إذا كان لديك:
نسخة عن فئة البيانات باسم NorthwindDataSetمع Customersجدول
AnOrdersجدول
تسمية علاقة FK_Orders_Customersالمتعلقة الثاني الجداول متوفر إلى نطاق من تعليمات برمجية الخاصة بك
بالإضافة إلى ذلك، كل من الجداول تحتاج إلى يتم تعبئة مع البيانات الخاصة بأية سجلات يتم إرجاعها.
الوصول إلى السجلات المرتبطة
إلى إرجاع التابع سجلات السجل الأصل المحدد
استدعاء GetChildRowsأسلوب محدد Customersصف بيانات و بإرجاع صفيفة صفوف من Ordersالجدول:
Dim customerID As String = "ALFKI" Dim orders() As NorthwindDataSet.OrdersRow orders = CType(NorthwindDataSet.Customers.FindByCustomerID(customerID). GetChildRows("FK_Orders_Customers"), NorthwindDataSet.OrdersRow()) MessageBox.Show(orders.Length.ToString())
string custID = "ALFKI"; NorthwindDataSet.OrdersRow[] orders; orders = (NorthwindDataSet.OrdersRow[])northwindDataSet.Customers. FindByCustomerID(custID).GetChildRows("FK_Orders_Customers"); MessageBox.Show(orders.Length.ToString());
إلى إرجاع السجل الأصل للسجل المحدد التابعة
قم باستدعاء GetParentRowأسلوب محدد Ordersصف بيانات و إرجاع صف مفرد من Customersالجدول:
Dim orderID As Integer = 10707 Dim customer As NorthwindDataSet.CustomersRow customer = CType(NorthwindDataSet.Orders.FindByOrderID(orderID). GetParentRow("FK_Orders_Customers"), NorthwindDataSet.CustomersRow) MessageBox.Show(customer.CompanyName)
int orderID = 10707; NorthwindDataSet.CustomersRow customer; customer = (NorthwindDataSet.CustomersRow)northwindDataSet.Orders. FindByOrderID(orderID).GetParentRow("FK_Orders_Customers"); MessageBox.Show(customer.CompanyName);
راجع أيضًا:
المبادئ
قم بربط عناصر التحكم إلى البيانات في Visual Studio
موارد أخرى
نظرة عامة حول تطبيقات بيانات في Visual Studio
الاتصال إلى البيانات في Visual Studio
قم بإعداد تطبيق الخاص بك إلى تلقي بيانات
إحضار بيانات في تطبيق الخاص بك