DataRelation DataRelation DataRelation DataRelation Class

정의

DataTable 개체 사이의 부모/자식 관계를 나타냅니다.Represents a parent/child relationship between two DataTable objects.

public ref class DataRelation
[System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))]
[System.Serializable]
public class DataRelation
type DataRelation = class
Public Class DataRelation
상속
DataRelationDataRelationDataRelationDataRelation
특성

예제

다음 예제에서는 새 DataRelation 에 추가 합니다 DataRelationCollectionDataSet합니다.The following example creates a new DataRelation and adds it to the DataRelationCollection of a DataSet.

private void CreateRelation() 
{
    // Get the DataColumn objects from two DataTable objects 
    // in a DataSet. Code to get the DataSet not shown here.
    DataColumn parentColumn = 
        DataSet1.Tables["Customers"].Columns["CustID"];
    DataColumn childColumn = 
        DataSet1.Tables["Orders"].Columns["CustID"];
    // Create DataRelation.
    DataRelation relCustOrder;
    relCustOrder = new DataRelation("CustomersOrders", 
        parentColumn, childColumn);
    // Add the relation to the DataSet.
    DataSet1.Relations.Add(relCustOrder);
}
Private Sub CreateRelation()
    ' Get the DataColumn objects from two DataTable objects 
    ' in a DataSet. Code to get the DataSet not shown here.
    Dim parentColumn As DataColumn = _
        DataSet1.Tables("Customers").Columns("CustID")
    Dim childColumn As DataColumn = DataSet1.Tables( _
        "Orders").Columns("CustID")

    ' Create DataRelation.
    Dim relCustOrder As DataRelation
    relCustOrder = New DataRelation( _
        "CustomersOrders", parentColumn, childColumn)

    ' Add the relation to the DataSet.
    DataSet1.Relations.Add(relCustOrder)
End Sub

설명

A DataRelation 두 개의 관련 되 DataTable 개체를 통해 서로 DataColumn 개체입니다.A DataRelation is used to relate two DataTable objects to each other through DataColumn objects. 예를 들어, 고객/Orders 관계에서 Customers 테이블에는 부모가 고 Orders 테이블은 관계의 자식입니다.For example, in a Customer/Orders relationship, the Customers table is the parent and the Orders table is the child of the relationship. 이 기본 키/외래 키 관계와 비슷합니다.This is similar to a primary key/foreign key relationship. 자세한 내용은 Datarelation 탐색합니다.For more information, see Navigating DataRelations.

부모 및 자식 테이블에 일치 하는 열 간의 관계가 생성 됩니다.Relationships are created between matching columns in the parent and child tables. 즉,는 DataType 값이 두 열 모두 동일 해야 합니다.That is, the DataType value for both columns must be identical.

관계는 부모에서 다양 한 변경 내용을 모두도 수 DataRow 자식 행에 있습니다.Relationships can also cascade various changes from the parent DataRow to its child rows. 자식 행의 값 변경 하는 방법을 제어 하려면 추가 ForeignKeyConstraintConstraintCollectionDataTable 개체입니다.To control how values are changed in child rows, add a ForeignKeyConstraint to the ConstraintCollection of the DataTable object. ConstraintCollection 부모 테이블의 값에 수행할 동작을 삭제 하거나 업데이트를 결정 합니다.The ConstraintCollection determines what action to take when a value in a parent table is deleted or updated.

경우는 DataRelation 가 만들어지면 먼저 확인 하 여 관계를 설정할 수 있습니다.When a DataRelation is created, it first verifies that the relationship can be established. 에 추가 된 후의 DataRelationCollection를 무효화할 수 있는 모든 변경 내용을 허용 하지 않음으로써 관계가 유지 됩니다.After it is added to the DataRelationCollection, the relationship is maintained by disallowing any changes that would invalidate it. 기간 간의 때를 DataRelation 만들어지고 추가 DataRelationCollection, 부모 또는 자식 행에 대 한 추가 변경 내용은 수.Between the period when a DataRelation is created and added to the DataRelationCollection, it is possible for additional changes to be made to the parent or child rows. 이 인해 관계를 유효 하지 않은 경우 예외가 생성 됩니다.An exception is generated if this causes a relationship that is no longer valid.

참고

두 테이블 간에 양방향 관계가 정의 된 경우 데이터 손상이 발생할 수 있습니다.Data corruption can occur if a bi-directional relation is defined between two tables. 양방향 관계는 두 개의 이루어져 DataRelation 전환 된 부모-자식 역할을 사용 하 여 같은 열을 사용 하는 개체입니다.A bi-directional relation consists of two DataRelation objects that use the same columns, with the parent-child roles switched. 예외가 발생 하지 않습니다 경우는 DataRelation 개체 저장 됩니다; 그러나 데이터 손상이 발생할 수 있습니다.No exception is raised when the DataRelation objects are saved; however, data corruption can occur.

DataRelation 개체에 포함 됩니다를 DataRelationCollection를 통해 액세스할 수 있는 Relations 의 속성을 DataSet, 및 ChildRelationsParentRelations 의 속성은 DataTable.DataRelation objects are contained in a DataRelationCollection, which you can access through the Relations property of the DataSet, and the ChildRelations and ParentRelations properties of the DataTable.

생성자

DataRelation(String, DataColumn, DataColumn) DataRelation(String, DataColumn, DataColumn) DataRelation(String, DataColumn, DataColumn) DataRelation(String, DataColumn, DataColumn)

지정된 DataRelation 이름과 부모 및 자식 DataRelation 개체를 사용하여 DataColumn 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the DataRelation class using the specified DataRelation name, and parent and child DataColumn objects.

DataRelation(String, DataColumn, DataColumn, Boolean) DataRelation(String, DataColumn, DataColumn, Boolean) DataRelation(String, DataColumn, DataColumn, Boolean) DataRelation(String, DataColumn, DataColumn, Boolean)

지정된 이름, 부모 및 자식 DataRelation 개체, 제약 조건을 만들지 여부를 나타내는 값 등을 사용하여 DataColumn 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the DataRelation class using the specified name, parent and child DataColumn objects, and a value that indicates whether to create constraints.

DataRelation(String, DataColumn[], DataColumn[]) DataRelation(String, DataColumn[], DataColumn[]) DataRelation(String, DataColumn[], DataColumn[]) DataRelation(String, DataColumn[], DataColumn[])

부모 및 자식 DataRelation 개체의 일치되는 배열과 지정된 DataRelation 이름을 사용하여 DataColumn 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the DataRelation class using the specified DataRelation name and matched arrays of parent and child DataColumn objects.

DataRelation(String, DataColumn[], DataColumn[], Boolean) DataRelation(String, DataColumn[], DataColumn[], Boolean) DataRelation(String, DataColumn[], DataColumn[], Boolean) DataRelation(String, DataColumn[], DataColumn[], Boolean)

지정된 이름, 부모 및 자식 DataRelation 개체의 일치되는 배열, 제약 조건을 만들지 여부를 나타내는 값 등을 사용하여 DataColumn 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the DataRelation class using the specified name, matched arrays of parent and child DataColumn objects, and value that indicates whether to create constraints.

DataRelation(String, String, String, String, String, String[], String[], Boolean) DataRelation(String, String, String, String, String, String[], String[], Boolean) DataRelation(String, String, String, String, String, String[], String[], Boolean) DataRelation(String, String, String, String, String, String[], String[], Boolean)

이 생성자는 Visual Studio 환경에서 디자인 타임 지원을 위해 제공됩니다.This constructor is provided for design time support in the Visual Studio environment.

DataRelation(String, String, String, String[], String[], Boolean) DataRelation(String, String, String, String[], String[], Boolean) DataRelation(String, String, String, String[], String[], Boolean) DataRelation(String, String, String, String[], String[], Boolean)

이 생성자는 Visual Studio 환경에서 디자인 타임 지원을 위해 제공됩니다.This constructor is provided for design time support in the Visual Studio environment.

속성

ChildColumns ChildColumns ChildColumns ChildColumns

이 관계의 자식 DataColumn 개체를 가져옵니다.Gets the child DataColumn objects of this relation.

ChildKeyConstraint ChildKeyConstraint ChildKeyConstraint ChildKeyConstraint

관계의 ForeignKeyConstraint를 가져옵니다.Gets the ForeignKeyConstraint for the relation.

ChildTable ChildTable ChildTable ChildTable

이 관계의 자식 테이블을 가져옵니다.Gets the child table of this relation.

DataSet DataSet DataSet DataSet

DataSet이 속하는 DataRelation을 가져옵니다.Gets the DataSet to which the DataRelation belongs.

ExtendedProperties ExtendedProperties ExtendedProperties ExtendedProperties

사용자 지정 속성을 저장하는 컬렉션을 가져옵니다.Gets the collection that stores customized properties.

Nested Nested Nested Nested

DataRelation 개체가 중첩되는지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether DataRelation objects are nested.

ParentColumns ParentColumns ParentColumns ParentColumns

DataColumn의 부모 열인 DataRelation 개체로 이루어진 배열을 가져옵니다.Gets an array of DataColumn objects that are the parent columns of this DataRelation.

ParentKeyConstraint ParentKeyConstraint ParentKeyConstraint ParentKeyConstraint

UniqueConstraint의 부모 열에 있는 값을 고유하게 하는 DataRelation를 가져옵니다.Gets the UniqueConstraint that guarantees that values in the parent column of a DataRelation are unique.

ParentTable ParentTable ParentTable ParentTable

DataTable의 부모 DataRelation를 가져옵니다.Gets the parent DataTable of this DataRelation.

RelationName RelationName RelationName RelationName

DataRelation에서 DataRelationCollection을 검색하는 데 사용되는 이름을 가져오거나 설정합니다.Gets or sets the name used to retrieve a DataRelation from the DataRelationCollection.

메서드

CheckStateForProperty() CheckStateForProperty() CheckStateForProperty() CheckStateForProperty()

이 메서드는 .NET Framework 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.This method supports the .NET Framework infrastructure and is not intended to be used directly from your code.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
OnPropertyChanging(PropertyChangedEventArgs) OnPropertyChanging(PropertyChangedEventArgs) OnPropertyChanging(PropertyChangedEventArgs) OnPropertyChanging(PropertyChangedEventArgs)

이 멤버는 .NET Framework 인프라를 지원하며 사용자 코드에서 직접 사용할 수 없습니다.This member supports the .NET Framework infrastructure and is not intended to be used directly from your code.

RaisePropertyChanging(String) RaisePropertyChanging(String) RaisePropertyChanging(String) RaisePropertyChanging(String)

이 멤버는 .NET Framework 인프라를 지원하며 사용자 코드에서 직접 사용할 수 없습니다.This member supports the .NET Framework infrastructure and is not intended to be used directly from your code.

ToString() ToString() ToString() ToString()

RelationName이 있는 경우 가져옵니다.Gets the RelationName, if one exists.

적용 대상

스레드 보안

이 유형은 다중 스레드 읽기 작업에 안전 합니다.This type is safe for multithreaded read operations. 모든 쓰기 작업을 동기화 해야 합니다.You must synchronize any write operations.

추가 정보