Leer en inglés

Compartir vía


Constraint Clase

Definición

Representa una restricción que se puede forzar en uno o más objetos DataColumn.

C#
[System.ComponentModel.TypeConverter(typeof(System.Data.ConstraintConverter))]
public abstract class Constraint
C#
public abstract class Constraint
C#
[System.ComponentModel.TypeConverter(typeof(System.Data.ConstraintConverter))]
[System.Serializable]
public abstract class Constraint
Herencia
Constraint
Derivado
Atributos

Ejemplos

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

C#
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)
        {
            PrintForeignKeyConstraintProperties(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 PrintForeignKeyConstraintProperties(
    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();
}

Comentarios

Una restricción es una regla que se usa para mantener la integridad de los datos en DataTable. Por ejemplo, cuando se elimina un valor que se usa en una o varias tablas relacionadas, un ForeignKeyConstraint determina si los valores de las tablas relacionadas también se eliminan, se establecen en valores NULL, se establecen en valores predeterminados o si no se produce ninguna acción. Por UniqueConstraintotro lado, solo se asegura de que todos los valores de una tabla determinada sean únicos. Para más información, vea Restricciones de DataTable.

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

Constructores

Constraint()

Inicializa una nueva instancia de la clase Constraint.

Propiedades

_DataSet

Obtiene el objeto DataSet al que pertenece esta restricción.

ConstraintName

Nombre de una restricción en el ConstraintCollection.

ExtendedProperties

Obtiene la colección de propiedades de restricción definidas por el usuario.

Table

Obtiene el DataTable al que se aplica la restricción.

Métodos

CheckStateForProperty()

Obtiene el objeto DataSet al que pertenece esta restricción.

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)
SetDataSet(DataSet)

Establece el objeto DataSet de la restricción.

ToString()

Obtiene el ConstraintName, si existe, como una cadena.

Se aplica a

Producto Versiones
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Seguridad para subprocesos

Este tipo es seguro para las operaciones de lectura multiproceso. Debe sincronizar las operaciones de escritura.

Consulte también