DataRelation Klas

Definitie

Vertegenwoordigt een bovenliggende/onderliggende relatie tussen twee DataTable objecten.

public ref class DataRelation
[System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))]
[System.Serializable]
public class DataRelation
[System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))]
public class DataRelation
public class DataRelation
[<System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))>]
[<System.Serializable>]
type DataRelation = class
[<System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))>]
type DataRelation = class
type DataRelation = class
Public Class DataRelation
Overname
DataRelation
Kenmerken

Voorbeelden

In het volgende voorbeeld wordt een nieuwe DataRelation gemaakt en toegevoegd aan een DataRelationCollectionDataSet.

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

Opmerkingen

Een DataRelation wordt gebruikt om twee DataTable objecten aan elkaar te relateren via DataColumn objecten. In een relatie Klant/Orders is de tabel Klanten bijvoorbeeld de bovenliggende tabel en is de tabel Orders het onderliggende element van de relatie. Dit is vergelijkbaar met een primaire sleutel-/refererende-sleutelrelatie. Zie Navigeren in DataRelations voor meer informatie.

Relaties worden gemaakt tussen overeenkomende kolommen in de bovenliggende en onderliggende tabellen. Dat wil gezegd: de DataType waarde voor beide kolommen moet identiek zijn.

Relaties kunnen ook verschillende wijzigingen van het bovenliggende DataRow element trapsgewijs toepassen op de onderliggende rijen. Als u wilt bepalen hoe waarden worden gewijzigd in onderliggende rijen, voegt u een ForeignKeyConstraint waarde toe aan het ConstraintCollectionDataTable object. Hiermee ConstraintCollection bepaalt u welke actie moet worden ondernomen wanneer een waarde in een bovenliggende tabel wordt verwijderd of bijgewerkt.

Wanneer een DataRelation wordt gemaakt, wordt eerst gecontroleerd of de relatie tot stand kan worden gebracht. Nadat deze aan de DataRelationCollectionrelatie is toegevoegd, wordt de relatie gehandhaafd door de toewijzing van wijzigingen die deze ongeldig maken, ongedaan te maken. Tussen de periode waarin een DataRelation wordt gemaakt en aan de groep DataRelationCollectionwordt toegevoegd, kunnen er extra wijzigingen worden aangebracht in de bovenliggende of onderliggende rijen. Er wordt een uitzondering gegenereerd als dit een relatie veroorzaakt die niet meer geldig is.

Note

Gegevensbeschadiging kan optreden als er een bidirectionele relatie tussen twee tabellen is gedefinieerd. Een bidirectionele relatie bestaat uit twee DataRelation objecten die dezelfde kolommen gebruiken, waarbij de bovenliggende en onderliggende rollen zijn overgeschakeld. Er wordt geen uitzondering gegenereerd wanneer de DataRelation objecten worden opgeslagen. Gegevensbeschadiging kan echter optreden.

DataRelation objecten bevinden zich in een DataRelationCollection, waartoe u toegang hebt via de eigenschap van de RelationsDataSet, en de ChildRelations en ParentRelations eigenschappen van de DataTable.

Constructors

Name Description
DataRelation(String, DataColumn, DataColumn, Boolean)

Initialiseert een nieuw exemplaar van de DataRelation klasse met behulp van de opgegeven naam, bovenliggende en onderliggende DataColumn objecten en een waarde die aangeeft of beperkingen moeten worden gemaakt.

DataRelation(String, DataColumn, DataColumn)

Initialiseert een nieuw exemplaar van de DataRelation klasse met behulp van de opgegeven naam en bovenliggende DataRelation en onderliggende DataColumn objecten.

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

Initialiseert een nieuw exemplaar van de DataRelation klasse met behulp van de opgegeven naam, overeenkomende matrices van bovenliggende en onderliggende DataColumn objecten en waarde die aangeeft of beperkingen moeten worden gemaakt.

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

Initialiseert een nieuw exemplaar van de DataRelation klasse met behulp van de opgegeven DataRelation naam en overeenkomende matrices van bovenliggende en onderliggende DataColumn objecten.

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

Deze constructor wordt geleverd voor ontwerptijdondersteuning in de Visual Studio-omgeving.

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

Deze constructor wordt geleverd voor ontwerptijdondersteuning in de Visual Studio-omgeving.

Eigenschappen

Name Description
ChildColumns

Hiermee haalt u de onderliggende DataColumn objecten van deze relatie op.

ChildKeyConstraint

Haalt de ForeignKeyConstraint relatie op.

ChildTable

Hiermee haalt u de onderliggende tabel van deze relatie op.

DataSet

Haalt de DataSet waartoe de DataRelation behoort.

ExtendedProperties

Hiermee haalt u de verzameling op waarin aangepaste eigenschappen worden opgeslagen.

Nested

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of DataRelation objecten zijn genest.

ParentColumns

Hiermee haalt u een matrix op van DataColumn objecten die de bovenliggende kolommen van dit DataRelationzijn.

ParentKeyConstraint

Hiermee wordt de UniqueConstraint garantie opgehaald dat waarden in de bovenliggende kolom van een DataRelation uniek zijn.

ParentTable

Haalt de bovenliggende DataTable van deze DataRelation.

RelationName

Hiermee haalt u de naam op die wordt gebruikt voor het ophalen van een DataRelation van de DataRelationCollection.

Methoden

Name Description
CheckStateForProperty()

Deze methode ondersteunt .NET infrastructuur en is niet bedoeld om rechtstreeks vanuit uw code te worden gebruikt.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
OnPropertyChanging(PropertyChangedEventArgs)

Dit lid ondersteunt .NET infrastructuur en is niet bedoeld om rechtstreeks vanuit uw code te worden gebruikt.

RaisePropertyChanging(String)

Dit lid ondersteunt .NET infrastructuur en is niet bedoeld om rechtstreeks vanuit uw code te worden gebruikt.

ToString()

Hiermee haalt u de RelationName, als deze bestaat.

Van toepassing op

Veiligheid thread

Dit type is veilig voor leesbewerkingen met meerdere leesbewerkingen. U moet schrijfbewerkingen synchroniseren.

Zie ook