dotConnect for SQL Server Documentation
Devart.Common Namespace / ParentDataRelation Class
Members Example

ParentDataRelation Class
Establishes query-based master-detail relation.
Syntax
'Declaration
 
Public Class ParentDataRelation 
 
Remarks

The ParentDataRelation class is designed to establish a master-detail relationship where details data is not cached on the client. Every time the current position in the master table is changed, the client DbDataTable requests the appropriate portion of data from the server.

Use property ParentTable to specify master DbDataTable, and the properties ParentColumnNames and ChildColumnNames to describe the relationiship.

Note that this feature can be used only for two instances of DbDataTable class that have same DbDataTable.Owner. In other words, the DbDataTable objects must reside on the same forms.

Example
The following example shows how to render related data in two grids.
SqlConnection connection = new SqlConnection(
    "User Id=sa;Server=localhost;Initial Catalog=Test;");
connection.Open();
SqlDataTable deptTable = new SqlDataTable("SELECT * FROM dept", connection);
SqlDataTable empTable = new SqlDataTable("SELECT * FROM emp", connection);
empTable.ParentRelation.ParentTable = deptTable;
empTable.ParentRelation.ParentColumnNames = new string[] { "deptno" };
empTable.ParentRelation.ChildColumnNames = new string[] { "deptno" };
deptTable.Owner = this;
empTable.Owner = this;
deptTable.FetchAll = true;
empTable.FetchAll = true;
deptTable.Open();
empTable.Open();
deptDataGrid.DataSource = deptTable;
empDataGrid.DataSource = empTable;
Dim connection As New SqlConnection( _
    "User Id=sa;Server=localhost;Initial Catalog=Test;")
connection.Open()
Dim deptTable As New SqlDataTable("SELECT * FROM dept", connection)
Dim empTable As New SqlDataTable("SELECT * FROM emp", connection)
empTable.ParentRelation.ParentTable = deptTable
empTable.ParentRelation.ParentColumnNames = New String() {"deptno"}
empTable.ParentRelation.ChildColumnNames = New String() {"deptno"}
deptTable.Owner = Me
empTable.Owner = Me
deptTable.FetchAll = True
empTable.FetchAll = True
deptTable.Open()
empTable.Open()
deptDataGrid.DataSource = deptTable
empDataGrid.DataSource = empTable
Inheritance Hierarchy

System.Object
   Devart.Common.ParentDataRelation

Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also