Compartir a través de


DataColumn.Expression Propiedad

Definición

Obtiene o establece la expresión utilizada para filtrar filas, calcular los valores de una columna o crear una columna agregada.

public:
 property System::String ^ Expression { System::String ^ get(); void set(System::String ^ value); };
public string Expression { get; set; }
[System.Data.DataSysDescription("DataColumnExpressionDescr")]
public string Expression { get; set; }
member this.Expression : string with get, set
[<System.Data.DataSysDescription("DataColumnExpressionDescr")>]
member this.Expression : string with get, set
Public Property Expression As String

Valor de propiedad

Expresión para calcular el valor de una columna o para crear una columna agregada. El tipo de valor devuelto de una expresión está determinado por el DataType de la columna.

Atributos

Excepciones

Las propiedades AutoIncrement o Unique están establecidas en true.

Al utilizar la función CONVERT, la expresión se evalúa como cadena, pero la cadena no contiene una representación que se pueda convertir al parámetro de tipo.

Al utilizar la función CONVERT, la conversión solicitada no es posible. Consulte la función de conversión de la siguiente sección para obtener información detallada sobre las posibles conversiones.

Al utilizar la función SUBSTRING, el argumento de inicio está fuera del intervalo.

-O bien-

Al utilizar la función SUBSTRING, el argumento de longitud está fuera del intervalo.

Al utilizar la función LEN o TRIM, la expresión no se evalúa como cadena. Esto incluye expresiones que se evalúan como Char.

Ejemplos

En el ejemplo siguiente se crean tres columnas en .DataTable Las columnas segunda y tercera contienen expresiones; el segundo calcula el impuesto mediante una tasa fiscal variable y el tercero agrega el resultado del cálculo al valor de la primera columna. La tabla resultante se muestra en un DataGrid control .

private void CalcColumns()
{
    DataTable table = new DataTable ();

    // Create the first column.
    DataColumn priceColumn = new DataColumn();
    priceColumn.DataType = System.Type.GetType("System.Decimal");
    priceColumn.ColumnName = "price";
    priceColumn.DefaultValue = 50;

    // Create the second, calculated, column.
    DataColumn taxColumn = new DataColumn();
    taxColumn.DataType = System.Type.GetType("System.Decimal");
    taxColumn.ColumnName = "tax";
    taxColumn.Expression = "price * 0.0862";

    // Create third column.
    DataColumn totalColumn = new DataColumn();
    totalColumn.DataType = System.Type.GetType("System.Decimal");
    totalColumn.ColumnName = "total";
    totalColumn.Expression = "price + tax";

    // Add columns to DataTable.
    table.Columns.Add(priceColumn);
    table.Columns.Add(taxColumn);
    table.Columns.Add(totalColumn);

    DataRow row = table.NewRow();
    table.Rows.Add(row);
    DataView view = new DataView(table);
    dataGrid1.DataSource = view;
}
Private Sub CalcColumns()
     Dim rate As Single = .0862
     Dim table As New DataTable()
 
     ' Create the first column.
     Dim priceColumn As New DataColumn()
     With priceColumn
         .DataType = System.Type.GetType("System.Decimal")
         .ColumnName = "price"
         .DefaultValue = 50
     End With
     
     ' Create the second, calculated, column.
     Dim taxColumn As New DataColumn()
     With taxColumn
         .DataType = System.Type.GetType("System.Decimal")
         .ColumnName = "tax"
         .Expression = "price * 0.0862"
     End With
     
    ' Create third column
     Dim totalColumn As New DataColumn()
     With totalColumn
         .DataType = System.Type.GetType("System.Decimal")
         .ColumnName = "total"
         .Expression = "price + tax"
     End With
 
     ' Add columns to DataTable
     With table.Columns
         .Add(priceColumn)
         .Add(taxColumn)
         .Add(totalColumn)
     End With
    
     Dim row As DataRow= table.NewRow
     table.Rows.Add(row)
     Dim view As New DataView
     view.Table = table
     DataGrid1.DataSource = view
 End Sub

Comentarios

Para más información sobre esta API, consulte Comentarios complementarios de la API para DataColumn.Expression.

Se aplica a

Consulte también