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
Este tema aún no ha recibido ninguna valoración - Valorar este tema

ConstraintCollection (Clase)

Representa una colección de restricciones para una tabla DataTable.

System.Object
  System.Data.InternalDataCollectionBase
    System.Data.ConstraintCollection

Espacio de nombres:  System.Data
Ensamblado:  System.Data (en System.Data.dll)
public sealed class ConstraintCollection : InternalDataCollectionBase

El tipo ConstraintCollection expone los siguientes miembros.

  Nombre Descripción
Propiedad pública Compatible con XNA Framework Count Obtiene el número total de elementos de una colección. (Se hereda de InternalDataCollectionBase).
Propiedad pública Compatible con XNA Framework IsReadOnly Obtiene un valor que indica si InternalDataCollectionBase es de sólo lectura. (Se hereda de InternalDataCollectionBase).
Propiedad pública Compatible con XNA Framework IsSynchronized Obtiene un valor que indica si el objeto InternalDataCollectionBase está sincronizado. (Se hereda de InternalDataCollectionBase).
Propiedad pública Compatible con XNA Framework Item[Int32] Obtiene el objeto Constraint de la colección en el índice especificado.
Propiedad pública Compatible con XNA Framework Item[String] Obtiene el objeto Constraint de la colección con el nombre especificado.
Propiedad protegida Compatible con XNA Framework List Obtiene los elementos de una colección en forma de lista. (Se hereda de InternalDataCollectionBase).
Propiedad pública Compatible con XNA Framework SyncRoot Obtiene un objeto que se puede utilizar para sincronizar la colección. (Se hereda de InternalDataCollectionBase).
Arriba
  Nombre Descripción
Método público Compatible con XNA Framework Add(Constraint) Agrega a la colección el objeto Constraint especificado.
Método público Compatible con XNA Framework Add(String, DataColumn, Boolean) Construye una nueva restricción UniqueConstraint con el nombre especificado, el objeto DataColumn y un valor que indica si la columna es una clave principal, y la agrega a la colección.
Método público Compatible con XNA Framework Add(String, DataColumn, DataColumn) Construye una nueva restricción ForeignKeyConstraint con el nombre, columna primaria y columna secundaria especificados, y agrega la restricción a la colección.
Método público Compatible con XNA Framework Add(String, DataColumn[], Boolean) Crea una nueva restricción UniqueConstraint con el nombre especificado, la matriz de objetos DataColumn y un valor que indica si la columna es una clave principal, y la agrega a la colección.
Método público Compatible con XNA Framework Add(String, DataColumn[], DataColumn[]) Construye una nueva restricción ForeignKeyConstraint con las matrices de columnas primarias y secundarias especificadas y agrega la restricción a la colección.
Método público Compatible con XNA Framework AddRange Copia los elementos de la matriz ConstraintCollection especificada al final de la colección.
Método público Compatible con XNA Framework CanRemove Indica si una restricción Constraint se puede quitar.
Método público Compatible con XNA Framework Clear Borra cualquier objeto Constraint de la colección.
Método público Compatible con XNA Framework Contains Indica si existe en la colección el objeto Constraint especificado por nombre.
Método público Compatible con XNA Framework CopyTo(Array, Int32) Copia todos los elementos del InternalDataCollectionBase actual en un Array unidimensional, empezando por el índice del InternalDataCollectionBase especificado. (Se hereda de InternalDataCollectionBase).
Método público Compatible con XNA Framework CopyTo(Constraint[], Int32) Copia los objetos de la colección en una instancia de Array unidimensional, comenzando a partir del índice especificado.
Método público Compatible con XNA Framework Equals(Object) Determina si el objeto Object especificado es igual al objeto Object actual. (Se hereda de Object).
Método protegido Compatible con XNA Framework 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).
Método público Compatible con XNA Framework GetEnumerator Obtiene un IEnumerator para la colección. (Se hereda de InternalDataCollectionBase).
Método público Compatible con XNA Framework GetHashCode Actúa como función hash para un tipo concreto. (Se hereda de Object).
Método público Compatible con XNA Framework GetType Obtiene el objeto Type de la instancia actual. (Se hereda de Object).
Método público Compatible con XNA Framework IndexOf(Constraint) Obtiene el índice del objeto Constraint especificado.
Método público Compatible con XNA Framework IndexOf(String) Obtiene el índice del objeto Constraint especificado por su nombre.
Método protegido Compatible con XNA Framework MemberwiseClone Crea una copia superficial del objeto Object actual. (Se hereda de Object).
Método público Compatible con XNA Framework Remove(Constraint) Quita de la colección el objeto Constraint especificado.
Método público Compatible con XNA Framework Remove(String) Quita el objeto Constraint especificado por nombre de la colección.
Método público Compatible con XNA Framework RemoveAt Quita de la colección el objeto Constraint que está en el índice especificado.
Método público Compatible con XNA Framework ToString Devuelve una cadena que representa el objeto actual. (Se hereda de Object).
Arriba
  Nombre Descripción
Evento público Compatible con XNA Framework CollectionChanged Se produce siempre que cambia la colección ConstraintCollection porque se están agregando o quitando objetos Constraint.
Arriba

Se obtiene acceso al ConstraintCollection mediante la propiedad DataTable.Constraints.

ConstraintCollection puede contener objetos UniqueConstraint y ForeignKeyConstraint para la tabla DataTable. Un objeto UniqueConstraint garantiza que los datos de una columna específica son siempre únicos, para mantener la integridad de los datos. La clase ForeignKeyConstraint determina lo que va a suceder en las tablas relacionadas cuando se actualice o elimine el objeto DataTable. Por ejemplo, si una fila se elimina, ForeignKeyConstraint determinará si las filas relacionadas también se eliminan (una cascada) o cualquier otra acción.

Nota Nota

Al agregar un objeto DataRelation, que crea una relación entre dos tablas, a un objeto DataSet, se crean automáticamente tanto un objeto ForeignKeyConstraint como un objeto UniqueConstraint. La restricción UniqueConstraint se aplica a la columna de clave principal de la tabla DataTable primaria y la restricción se agrega a la colección ConstraintCollection de esa tabla. La restricción ForeignKeyConstraint se aplica a las columnas de clave principal y de clave externa y la restricción se agrega a la colección ConstraintCollection de la tabla secundaria.

La colección ConstraintCollection utiliza métodos de colección estándar, como Add, Clear y Remove. Además, se puede utilizar el método Contains para comprobar la existencia de una restricción concreta en la colección.

Cuando se agrega un objeto DataColumn con la propiedad Unique establecida en true a la colección DataColumnCollection de un objeto DataTable, se crea una restricción UniqueConstraint.

Cuando se agrega una relación DataRelation a la colección DataRelationCollection de un objeto DataSet, se crea una restricción ForeignKeyConstraint.

En el primer ejemplo, se crea una tabla DataTable y se agrega una columna DataColumn (con la propiedad Unique establecida en true) a la colección DataColumnCollection. En el segundo ejemplo, se crea un DataSet, dos objetos DataTable, cuatro columnas y una relación DataRelation. A continuación, se imprime el recuento de restricciones para mostrar que se han creado una restricción ForeignKeyConstraint y una restricción UniqueConstraint al agregar una relación DataRelation al DataRelationCollection del objeto DataSet.


private void MakeTableWithUniqueConstraint()
{
    DataTable table = new DataTable("table");
    DataColumn column = new DataColumn("UniqueColumn");
    column.Unique=true;
    table.Columns.Add(column);

    // Print count, name, and type.
    Console.WriteLine("Constraints.Count " 
        + table.Constraints.Count);
    Console.WriteLine(table.Constraints[0].ConstraintName);
    Console.WriteLine(table.Constraints[0].GetType() );

    // Add a second unique column.
    column = new DataColumn("UniqueColumn2");
    column.Unique=true;
    table.Columns.Add(column);

    // Print info again.
    Console.WriteLine("Constraints.Count " 
        + table.Constraints.Count);
    Console.WriteLine(table.Constraints[1].ConstraintName);
    Console.WriteLine(table.Constraints[1].GetType() );
}

private void MakeTableWithForeignConstraint()
{
    // Create a DataSet.
    DataSet dataSet = new DataSet("dataSet");

    // Make two tables.
    DataTable customersTable= new DataTable("Customers");
    DataTable ordersTable = new DataTable("Orders");

    // Create four columns, two for each table.
    DataColumn name = new DataColumn("Name");
    DataColumn id = new DataColumn("ID");
    DataColumn orderId = new DataColumn("OrderID");
    DataColumn cDate = new DataColumn("OrderDate");

    // Add columns to tables.
    customersTable.Columns.Add(name);
    customersTable.Columns.Add(id);
    ordersTable.Columns.Add(orderId);
    ordersTable.Columns.Add(cDate);

    // Add tables to the DataSet.
    dataSet.Tables.Add(customersTable);
    dataSet.Tables.Add(ordersTable); 

    // Create a DataRelation for two of the columns.
    DataRelation myRelation = new 
        DataRelation("CustomersOrders",id,orderId,true);
    dataSet.Relations.Add(myRelation);

    // Print TableName, Constraints.Count, 
    // ConstraintName and Type.
    foreach(DataTable t in dataSet.Tables)
    {
        Console.WriteLine(t.TableName);
        Console.WriteLine("Constraints.Count " 
            + t.Constraints.Count);
        Console.WriteLine("ParentRelations.Count " 
            + t.ParentRelations.Count);
        Console.WriteLine("ChildRelations.Count " 
            + t.ChildRelations.Count);
        foreach(Constraint cstrnt in t.Constraints)
        {
            Console.WriteLine(cstrnt.ConstraintName);
            Console.WriteLine(cstrnt.GetType());
        }
    }
}


.NET Framework

Compatible con: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

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.

Este tipo es seguro para operaciones de lectura multiproceso. Debe sincronizar cualquier operación de escritura.

¿Le ha resultado útil?
(Caracteres restantes: 1500)
Contenido de la comunidad Agregar