Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. |
Traducción
Original
|
DataRelation (Clase)
Representa una relación primaria-secundaria entre dos objetos DataTable.
Ensamblado: System.Data (en System.Data.dll)
El tipo DataRelation expone los siguientes miembros.
| Nombre | Descripción | |
|---|---|---|
|
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[]) | 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, los objetos DataColumn primarios y secundarios y un valor que indica si se van a crear restricciones. |
|
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[], Boolean) | Este constructor proporciona compatibilidad en tiempo de diseño en el entorno de Visual Studio. |
|
DataRelation(String, String, String, String, String, String[], String[], Boolean) | Este constructor proporciona compatibilidad en tiempo de diseño en el entorno de Visual Studio. |
| Nombre | Descripción | |
|---|---|---|
|
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. |
| Nombre | Descripción | |
|---|---|---|
|
CheckStateForProperty | Infraestructura. Este método es compatible con la infraestructura de .NET Framework y no está pensado para utilizarlo directamente desde el código. |
|
Equals(Object) | Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object). |
|
Finalize | Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por la recolección de elementos no utilizados. (Se hereda de Object). |
|
GetHashCode | Actúa como función hash para un tipo concreto. (Se hereda de Object). |
|
GetType | Obtiene el objeto Type de la instancia actual. (Se hereda de Object). |
|
MemberwiseClone | Crea una copia superficial del objeto Object actual. (Se hereda de Object). |
|
OnPropertyChanging | Este miembro es compatible con la infraestructura de .NET Framework y no está diseñado para utilizarse directamente desde el código. |
|
RaisePropertyChanging | Este miembro es compatible con la infraestructura de .NET Framework y no se debe utilizar directamente del código. |
|
ToString | Obtiene el RelationName, si existe alguno. (Invalida a Object.ToString()). |
El control DataRelation se utiliza para relacionar dos objetos DataTable entre sí a mediante objetos DataColumn. Por ejemplo, en una relación Customer/Orders, la tabla Customers es el elemento primario y la tabla Orders el secundario. Es similar a una relación entre la clave principal y la clave externa. Para obtener más información, vea Navegar por DataRelations (ADO.NET).
Las relaciones se crean entre columnas coincidentes de las tablas primarias y secundarias. Es decir, el valor DataType para ambas columnas debe ser idéntico.
Las relaciones también pueden originar varios cambios en cascada desde el DataRow primario hasta sus filas secundarias. Para controlar el cambio de valores en las filas secundarias, agregue un ForeignKeyConstraint al ConstraintCollection del objeto DataTable. ConstraintCollection determina la acción que se debe realizar cuando se elimina o actualiza un valor de una tabla primaria.
Cuando se crea un DataRelation, primero se comprueba que se puede establecer la relación. Después de agregarlo al DataRelationCollection, se mantiene la relación al no permitir ningún cambio que la invalide. Entre el período en que se crea un DataRelation y en que se agrega al DataRelationCollection, se pueden realizar cambios adicionales en las filas primarias o secundarias. Si esto produce una relación que ya no es válida, se genera una excepción.
Nota
|
|---|
|
Pueden dañarse los datos si se define una relación bidireccional entre dos tablas. Una relación bidireccional consta de dos objetos DataRelation que usan las mismas columnas, con las funciones primarias y secundarias intercambiadas. No se produce ninguna excepción al guardar los objetos DataRelation; no obstante, pueden dañarse los datos. |
Los objetos DataRelation se incluyen en un DataRelationCollection, al que se puede obtener acceso mediante la propiedad Relations del DataSet; y las propiedades ChildRelations y ParentRelations del DataTable.
En el ejemplo siguiente se crea un nuevo DataRelation y se agrega al DataRelationCollection de un 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); }
Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2
.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Nota