DataSet.MergeFailed DataSet.MergeFailed DataSet.MergeFailed DataSet.MergeFailed Event

Definition

Tritt auf, wenn eine Ziel- und eine Quell-DataRow denselben Primärschlüsselwert aufweisen und EnforceConstraints auf True festgelegt ist.Occurs when a target and source DataRow have the same primary key value, and EnforceConstraints is set to true.

public:
 event System::Data::MergeFailedEventHandler ^ MergeFailed;
[System.Data.DataSysDescription("DataSetMergeFailedDescr")]
public event System.Data.MergeFailedEventHandler MergeFailed;
member this.MergeFailed : System.Data.MergeFailedEventHandler 
Public Custom Event MergeFailed As MergeFailedEventHandler 
Attribute

Beispiele

Das folgende Beispiel zeigt die Verwendung der MergeFailed Ereignis.The following example demonstrates the use of the MergeFailed event.


private static void DemonstrateMergeFailedEvent()
{
    // Create a DataSet with one table containing two columns.
    DataSet dataSet = new DataSet("dataSet");
    DataTable table = new DataTable("Items");

    // Add table to the DataSet.
    dataSet.Tables.Add(table);

    // Add two columns to the DataTable.
    table.Columns.Add("id", typeof(int));
    table.Columns.Add("item", typeof(int));

    // Set the primary key to the first column.
    table.PrimaryKey = new DataColumn[] { table.Columns["id"] };

    // Add MergeFailed event handler for the table.
    dataSet.MergeFailed += new MergeFailedEventHandler(Merge_Failed);

    // Create a second DataTable identical to the first, 
    DataTable t2 = table.Clone();

    // Set the primary key of the new table to the second column.
    // This will cause the MergeFailed event to be raised when the
    // table is merged into the DataSet.
    t2.PrimaryKey = new DataColumn[] { t2.Columns["item"] };

    // Merge the table into the DataSet.
    Console.WriteLine("Merging...");
    dataSet.Merge(t2, false, MissingSchemaAction.Add);
}

private static void Merge_Failed(object sender, MergeFailedEventArgs e)
{
    Console.WriteLine("Merge_Failed Event: '{0}'", e.Conflict);
}


Private Shared Sub DemonstrateMergeFailedEvent()
	' Create a DataSet with one table containing two columns.
	Dim dataSet AS DataSet = New DataSet("dataSet")
	Dim table As DataTable = New DataTable("Items")
	
	' Add table to the DataSet.
	dataSet.Tables.Add(table)

	' Add two columns to the DataTable.
	table.Columns.Add("id", Type.GetType("System.Int32"))
	table.Columns.Add("item", Type.GetType("System.Int32"))

	' Set the primary key to the first column.
	table.PrimaryKey = new DataColumn() { table.Columns("id") }

	' Add MergeFailed event handler for the table.
	AddHandler dataSet.MergeFailed, _
        New MergeFailedEventHandler(AddressOf Merge_Failed)

	' Create a second DataTable identical to the first, 
	Dim t2 As DataTable = table.Clone()

	' Set the primary key of the new table to the second column.
	' This will cause the MergeFailed event to be raised when the
	' table is merged into the DataSet.
	t2.PrimaryKey = New DataColumn() { t2.Columns("item") }
	
	' Merge table into the DataSet.
	Console.WriteLine("Merging...")
	dataSet.Merge(t2, false, MissingSchemaAction.Add)
End Sub

Private Shared Sub Merge_Failed(sender As object, _
    e As MergeFailedEventArgs)
	Console.WriteLine("Merge_Failed Event: '{0}'", e.Conflict)
End Sub

Hinweise

Weitere Informationen zum Behandeln von Ereignissen finden Sie unter behandeln und Auslösen von Ereignissen.For more information about how to handle events, see Handling and Raising Events.

Gilt für:

Siehe auch