ConstraintCollection.CanRemove(Constraint) Metod

Definition

Anger om en Constraint kan tas bort.

public:
 bool CanRemove(System::Data::Constraint ^ constraint);
public bool CanRemove(System.Data.Constraint constraint);
member this.CanRemove : System.Data.Constraint -> bool
Public Function CanRemove (constraint As Constraint) As Boolean

Parametrar

constraint
Constraint

Som Constraint ska testas för borttagning från samlingen.

Returer

true Constraint om kan tas bort från samlingen, annars , false.

Exempel

I följande exempel används CanRemove metoden för att avgöra om en Constraint kan tas bort innan du försöker ta bort den.

private void TryRemove(DataSet dataSet)
{
    try
    {
        DataTable customersTable = dataSet.Tables["Customers"];
        Constraint constraint = customersTable.Constraints[0];
        Console.WriteLine("Can remove? " +
            customersTable.Constraints.CanRemove(constraint));
    }
    catch(Exception ex)
    {
        // Process exception and return.
        Console.WriteLine("Exception of type {0} occurred.",
            ex.GetType());
    }
}
Private Sub TryRemove(dataSet As DataSet)
    Try
        Dim customersTable As DataTable = dataSet.Tables("Customers")
        Dim constraint As Constraint = customersTable.Constraints(0)
        Console.WriteLine("Can remove? " & _
            customersTable.Constraints.CanRemove(constraint).ToString())

    Catch ex As Exception
        ' Process exception and return.
        Console.WriteLine("Exception of type {0} occurred.", _
            ex.GetType().ToString())
    End Try
End Sub

Kommentarer

Standardbeteendet när en DataRelation läggs till i en DataSet, är att lägga till en ForeignKeyConstraint i den överordnade tabellen och en UniqueConstraint i den underordnade tabellen. UniqueConstraint Tillämpas på primärnyckelkolumnen i den överordnade tabellen och ForeignKeyConstraint tillämpas på sekundärnyckelkolumnen i den underordnade tabellen. Eftersom du försöker ta bort UniqueConstraint innan du ForeignKeyConstraint tar bort orsaken till att ett undantag utlöses bör du alltid använda CanRemove metoden innan du anropar Ta bort för att se till att UniqueConstraint kan tas bort.

Gäller för