This documentation is archived and is not being maintained.

ConstraintCollection.Add Method (String, DataColumn[], DataColumn[])

Constructs a new ForeignKeyConstraint, with the specified arrays of parent columns and child columns, and adds the constraint to the collection.

Namespace:  System.Data
Assembly:  System.Data (in System.Data.dll)

public Constraint Add(
	string name,
	DataColumn[] primaryKeyColumns,
	DataColumn[] foreignKeyColumns


Type: System.String
The name of the ForeignKeyConstraint.
Type: System.Data.DataColumn[]
An array of DataColumn objects that are the primary key, or parent, columns.
Type: System.Data.DataColumn[]
An array of DataColumn objects that are the foreign key, or child, columns.

Return Value

Type: System.Data.Constraint
A new ForeignKeyConstraint.

The CollectionChanged event occurs if the constraint is added successfully.

The following example creates two arrays of DataColumn objects, and then creates two ForeignKeyConstraint relationships between two tables in a dataset.

private void AddForeignConstraint(
    DataSet dataSet, DataTable table)
        DataColumn[] parentColumns = new DataColumn[2];
        DataColumn[] childColumns = new DataColumn[2];
        // Get the tables from the DataSet.
        DataTable customersTable = dataSet.Tables["Customers"];
        DataTable ordersTable = dataSet.Tables["Orders"];

        // Set Columns.
        childColumns[0] = ordersTable.Columns["CustomerID"];
        childColumns[1] = ordersTable.Columns["CustomerName"];

        // Create ForeignKeyConstraint
            parentColumns, childColumns);
    catch(Exception ex)
        // In case the constraint already exists, 
        // catch the collision here and respond.
        Console.WriteLine("Exception of type {0} occurred.", 

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

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

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.