DataRelation Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Representa una relación primaria-secundaria entre dos 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
- Herencia
-
DataRelation
- Atributos
Ejemplos
En el ejemplo siguiente se crea un nuevo DataRelation objeto y se agrega a DataRelationCollection de .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
Comentarios
DataRelation Se usa para relacionar dos DataTable objetos entre sí a través de DataColumn objetos . Por ejemplo, en una relación Customer/Orders, la tabla Customers es el elemento primario y la tabla Orders es el elemento secundario de la relación. Esto es similar a una relación de clave principal/clave externa. Para obtener más información, vea Navegar por DataRelations.
Las relaciones se crean entre las columnas coincidentes en las tablas primarias y secundarias. Es decir, el DataType valor de ambas columnas debe ser idéntico.
Las relaciones también pueden poner en cascada varios cambios del elemento primario DataRow a sus filas secundarias. Para controlar cómo se cambian los valores en las filas secundarias, agregue a ForeignKeyConstraint del ConstraintCollection DataTable objeto . ConstraintCollection determina qué acción realizar cuando se elimina o actualiza un valor de una tabla primaria.
Cuando se crea un DataRelation objeto , comprueba primero que se puede establecer la relación. Después de agregarlo a DataRelationCollection, la relación se mantiene al no permitir los cambios que la invaliden. Entre el período en DataRelation el que se crea y se agrega a DataRelationCollection, es posible realizar cambios adicionales en las filas primarias o secundarias. Se genera una excepción si esto provoca una relación que ya no es válida.
Nota
Los datos dañados pueden producirse si se define una relación bidireccional entre dos tablas. Una relación bidireccional consta de dos DataRelation
objetos que usan las mismas columnas, con los roles primarios y secundarios modificados. No se produce ninguna excepción cuando se guardan los objetos; sin embargo, se pueden producir daños en los DataRelation
datos.
DataRelation Los objetos están contenidos en un DataRelationCollection, al que se puede tener acceso a través de la Relations propiedad de DataSet, y las ChildRelations propiedades y ParentRelations de DataTable.
Constructores
DataRelation(String, DataColumn, DataColumn) |
Inicializa una nueva instancia de la clase DataRelation mediante el nombre DataRelation especificado y los objetos DataColumn primarios y secundarios. |
DataRelation(String, DataColumn, DataColumn, Boolean) |
Inicializa una nueva instancia de la clase DataRelation utilizando el nombre especificado, los objetos DataColumn primarios y secundarios y un valor que indica si se van a crear restricciones. |
DataRelation(String, DataColumn[], DataColumn[]) |
Inicializa una nueva instancia de la clase DataRelation mediante el nombre DataRelation especificado y las matrices coincidentes de los objetos DataColumn primarios y secundarios. |
DataRelation(String, DataColumn[], DataColumn[], Boolean) |
Inicializa una nueva instancia de la clase DataRelation utilizando el nombre especificado, matrices coincidentes de objetos DataColumn primarios y secundarios y un valor que indica si se van a crear restricciones. |
DataRelation(String, String, String, String, String, String[], String[], Boolean) |
Este constructor proporciona compatibilidad en tiempo de diseño en el entorno de Visual Studio. |
DataRelation(String, String, String, String[], String[], Boolean) |
Este constructor proporciona compatibilidad en tiempo de diseño en el entorno de Visual Studio. |
Propiedades
ChildColumns |
Obtiene los objetos DataColumn secundarios de esta relación. |
ChildKeyConstraint |
Obtiene el ForeignKeyConstraint para la relación. |
ChildTable |
Obtiene la tabla secundaria de esta relación. |
DataSet |
Obtiene el DataSet al que pertenece el DataRelation. |
ExtendedProperties |
Obtiene la colección que almacena propiedades personalizadas. |
Nested |
Obtiene o establece un valor que indica si se anidan objetos DataRelation. |
ParentColumns |
Obtiene una matriz de objetos DataColumn que son las columnas primarias de este DataRelation. |
ParentKeyConstraint |
Obtiene el objeto UniqueConstraint que garantiza que los valores de la columna primaria de un objeto DataRelation son únicos. |
ParentTable |
Obtiene el DataTable primario de DataRelation. |
RelationName |
Obtiene o establece el nombre utilizado para recuperar un DataRelation de DataRelationCollection. |
Métodos
CheckStateForProperty() |
Este método es compatible con la infraestructura de .NET y no está diseñado para utilizarse directamente desde el código. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
OnPropertyChanging(PropertyChangedEventArgs) |
Este miembro es compatible con la infraestructura de .NET y no está diseñado para utilizarse directamente desde el código. |
RaisePropertyChanging(String) |
Este miembro es compatible con la infraestructura de .NET y no está diseñado para utilizarse directamente desde el código. |
ToString() |
Obtiene el RelationName, si existe alguno. |
Se aplica a
Seguridad para subprocesos
Este tipo es seguro para las operaciones de lectura multiproceso. Debe sincronizar las operaciones de escritura.