Share via


ConstraintCollection.CanRemove(Constraint) 메서드

정의

Constraint를 제거할 수 있는지 나타냅니다.

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

매개 변수

constraint
Constraint

컬렉션에서 제거할 수 있는지 테스트할 Constraint입니다.

반환

Constraint를 컬렉션에서 제거할 수 있으면 true이고, 그렇지 않으면 false입니다.

예제

다음 예제에서는 메서드를 CanRemove 사용 하 여 제거 하려고 하기 전에 제거할 수 있는지 여부를 Constraint 확인 합니다.

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

설명

DataRelation 에 추가할 DataSet때마다 기본 동작은 부모 테이블에 를 ForeignKeyConstraint 추가하고 자식 테이블에 을 UniqueConstraint 추가하는 것입니다. 는 UniqueConstraint 부모 테이블의 기본 키 열에 적용되고 ForeignKeyConstraint 는 자식 테이블의 외래 키 열에 적용됩니다. 를 제거하기 전에 를 제거 UniqueConstraintForeignKeyConstraint 하려고 하면 예외가 throw되므로 Remove를 호출하기 전에 항상 메서드를 사용하여 CanRemove 를 제거할 수 있는지 확인해야 UniqueConstraint 합니다.

적용 대상