DataRelation Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma relação pai/filho entre dois objetos DataTable.
public ref class DataRelation
[System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))]
public class DataRelation
public class DataRelation
[System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))]
[System.Serializable]
public class DataRelation
[<System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))>]
type DataRelation = class
type DataRelation = class
[<System.ComponentModel.TypeConverter(typeof(System.Data.RelationshipConverter))>]
[<System.Serializable>]
type DataRelation = class
Public Class DataRelation
- Herança
-
DataRelation
- Atributos
Exemplos
O exemplo a seguir cria um novo DataRelation e o adiciona ao DataRelationCollection de um 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
Comentários
Um DataRelation é usado para relacionar dois DataTable objetos uns aos outros por meio DataColumn de objetos. Por exemplo, em uma relação Cliente/Pedidos, a tabela Clientes é o pai e a tabela Pedidos é o filho da relação. Isso é semelhante a uma relação chave primária/chave estrangeira. Para obter mais informações, consulte Navegar por DataRelations.
As relações são criadas entre colunas correspondentes nas tabelas pai e filho. Ou seja, o DataType valor para ambas as colunas deve ser idêntico.
As relações também podem cascata de várias alterações do pai DataRow para suas linhas filho. Para controlar como os valores são alterados em linhas filho, adicione um ForeignKeyConstraint ao ConstraintCollection objeto DataTable . Determina ConstraintCollection qual ação tomar quando um valor em uma tabela pai é excluído ou atualizado.
Quando um DataRelation é criado, primeiro verifica se a relação pode ser estabelecida. Depois de adicionada à DataRelationCollectionrelação, a relação é mantida, não permitindo alterações que a invalidem. Entre o período em que um DataRelation é criado e adicionado ao DataRelationCollection, é possível que alterações adicionais sejam feitas nas linhas pai ou filho. Uma exceção será gerada se isso causar uma relação que não é mais válida.
Observação
A corrupção de dados poderá ocorrer se uma relação bidirecional for definida entre duas tabelas. Uma relação bidirecional consiste em dois DataRelation
objetos que usam as mesmas colunas, com as funções pai-filho alternadas. Nenhuma exceção é gerada quando os DataRelation
objetos são salvos; no entanto, pode ocorrer corrupção de dados.
DataRelation os objetos estão contidos em um DataRelationCollection, que você pode acessar por meio da Relations propriedade do DataSet, e das ChildRelations propriedades e ParentRelations do DataTable.
Construtores
DataRelation(String, DataColumn, DataColumn) |
Inicializa uma nova instância da classe DataRelation usando o nome DataRelation especificado e os objetos DataColumn pai e filho. |
DataRelation(String, DataColumn, DataColumn, Boolean) |
Inicializa uma nova instância da classe DataRelation usando o nome especificado, os objetos DataColumn pai e filho e um valor que indica se é necessário criar restrições. |
DataRelation(String, DataColumn[], DataColumn[]) |
Inicializa uma nova instância da classe DataRelation usando o nome DataRelation e matrizes correspondentes de objetos DataColumn pai e filho. |
DataRelation(String, DataColumn[], DataColumn[], Boolean) |
Inicializa uma nova instância da classe DataRelation usando o nome especificado, matrizes correspondentes de objetos DataColumn pai e filho e um valor que indica se é necessário criar restrições. |
DataRelation(String, String, String, String, String, String[], String[], Boolean) |
Este construtor é fornecido para suporte de tempo de design no ambiente do Visual Studio. |
DataRelation(String, String, String, String[], String[], Boolean) |
Este construtor é fornecido para suporte de tempo de design no ambiente do Visual Studio. |
Propriedades
ChildColumns |
Obtém os objetos DataColumn filho dessa relação. |
ChildKeyConstraint |
Obtém o ForeignKeyConstraint para a relação. |
ChildTable |
Obtém a tabela filho dessa relação. |
DataSet |
Obtém o DataSet ao qual o DataRelation pertence. |
ExtendedProperties |
Obtém a coleção que armazena as propriedades personalizadas. |
Nested |
Obtém ou define um valor que indica se os objetos DataRelation são aninhados. |
ParentColumns |
Obtém uma matriz de objetos DataColumn que são as colunas pai desse DataRelation. |
ParentKeyConstraint |
Obtém o UniqueConstraint que garante que os valores na coluna pai de um DataRelation são exclusivos. |
ParentTable |
Obtém o pai DataTable desse DataRelation. |
RelationName |
Obtém ou define o nome usado para recuperar um DataRelation do DataRelationCollection. |
Métodos
CheckStateForProperty() |
Este método oferece suporte à infraestrutura .NET e não se destina a ser usado diretamente do seu código. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
OnPropertyChanging(PropertyChangedEventArgs) |
Este membro dá suporte à infraestrutura .NET e não se destina a ser usado diretamente do código. |
RaisePropertyChanging(String) |
Este membro dá suporte à infraestrutura .NET e não se destina a ser usado diretamente do código. |
ToString() |
Obtém o RelationName, se houver. |
Aplica-se a
Acesso thread-safe
Este tipo é seguro para operações de leitura e multithread. Você deve sincronizar todas as operações de gravação.