March 2008
Intermediate to advanced
982 pages
22h 43m
English
You need to create a parent/child relation between two tables.
Use the System.Data.DataRelation class.
The solution creates a DataSet with two tables. A data relation is added to the DataSet establishing a parent/child relationship between the tables. Rows are added to both parent and child tables, including a row that violates the constraint. The results are output to the console.
The C# code in Program.cs in the project CreateDataRelation is shown in Example 2-10.
Example 2-10. File: Program.cs forCreateDataRelation solution
using System; using System.Data; namespace CreateDataRelation { class Program { static void Main(string[] args) { DataSet ds = new DataSet(); // Create the parent table and add to the DataSet DataTable dt1 = new DataTable("Table-1"); dt1.Columns.Add("Id1", typeof(int)); dt1.Columns.Add("Id2", typeof(int)); dt1.Columns.Add("Field1", typeof(string)).MaxLength = 50; ds.Tables.Add(dt1); // Create the child table and add to the DataSet DataTable dt2 = new DataTable("Table-2"); dt2.Columns.Add("Id3", typeof(int)); dt2.Columns.Add("Id1", typeof(int)); dt2.Columns.Add("Id2", typeof(int)); dt2.Columns.Add("Field2", typeof(string)).MaxLength = 50; ds.Tables.Add(dt2); // Create the data relation and add to the DataSet DataRelation dr = new DataRelation("DataRelation", new DataColumn[] { dt1.Columns["Id1"], dt1.Columns["Id2"] }, new DataColumn[] { dt2.Columns["Id1"], dt2.Columns["Id2"] }, true); ds.Relations.Add(dr); try { AddParentRecord(dt1, ...Read now
Unlock full access