Personas que lo han encontrado útil: 1 de 1 - Valorar este tema

Constraint (Clase)

Representa una restricción que se puede imponer a uno o varios objetos DataColumn.

Espacio de nombres: System.Data
Ensamblado: System.Data (en system.data.dll)

public abstract class Constraint
public abstract class Constraint
public abstract class Constraint

Una restricción es una regla que se utiliza para mantener la integridad de los datos en el DataTable. Por ejemplo, al eliminar un valor que se utiliza en una o más tablas relacionadas, un ForeignKeyConstraint determina si los valores de las tablas relacionadas también se eliminan, se establecen en valores nulos, se establecen en valores predeterminados, o si no se realiza ninguna acción. Por otra parte, una restricción UniqueConstraint simplemente garantiza que todos los valores de una tabla concreta son únicos. Para obtener más información, vea Agregar restricciones a una tabla.

No se utiliza un constructor Constraint base. Las restricciones de clave principal o única se crean mediante el constructor UniqueConstraint, y las restricciones de clave externa mediante el constructor ForeignKeyConstraint.

En el ejemplo siguiente se examina la colección de restricciones para un objeto DataTable y se determina si cada una de las restricciones es un objeto UniqueConstraint o un objeto ForeignKeyConstraint. A continuación se muestran las propiedades de la restricción.

private void GetConstraints(DataTable dataTable)
{
    Console.WriteLine();

    // Print the table's name.
    Console.WriteLine("TableName: " + dataTable.TableName);

    // Iterate through the collection and 
    // print each name and type value.
    foreach(Constraint constraint in dataTable.Constraints ) 
    {
        Console.WriteLine("Constraint Name: " 
            + constraint.ConstraintName);
        Console.WriteLine("Type: " 
            + constraint.GetType().ToString());

        // If the constraint is a UniqueConstraint, 
        // print its properties using a function below.
        if(constraint is UniqueConstraint) 
        {
            PrintUniqueConstraintProperties(constraint);
        }
        // If the constraint is a ForeignKeyConstraint, 
        // print its properties using a function below.
        if(constraint is ForeignKeyConstraint) 
        {
            PrintForeigKeyConstraintProperties(constraint);
        }
    }
}
 
private void PrintUniqueConstraintProperties(
    Constraint constraint)
{
    UniqueConstraint uniqueConstraint;
    uniqueConstraint = (UniqueConstraint) constraint;

    // Get the Columns as an array.
    DataColumn[] columnArray;
    columnArray = uniqueConstraint.Columns;

    // Print each column's name.
    for(int i = 0;i<columnArray.Length ;i++) 
    {
        Console.WriteLine("Column Name: " 
            + columnArray[i].ColumnName);
    }
}
 
private void PrintForeigKeyConstraintProperties(
    Constraint constraint)
{
    ForeignKeyConstraint fkConstraint;
    fkConstraint = (ForeignKeyConstraint) constraint;
 
    // Get the Columns as an array.
    DataColumn[] columnArray;
    columnArray = fkConstraint.Columns;
 
    // Print each column's name.
    for(int i = 0;i<columnArray.Length ;i++) 
    {
        Console.WriteLine("Column Name: " 
            + columnArray[i].ColumnName);
    }
    Console.WriteLine();
 
    // Get the related columns and print each columns name.
    columnArray = fkConstraint.RelatedColumns ;
    for(int i = 0;i<columnArray.Length ;i++) 
    {
        Console.WriteLine("Related Column Name: " 
            + columnArray[i].ColumnName);
    }
    Console.WriteLine();
}

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

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0
¿Le ha resultado útil?
(Caracteres restantes: 1500)
Contenido de la comunidad Agregar