DataColumn.Expression Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece la expresión usada para filtrar filas, calcular los valores de una columna o crear una columna de agregado.
public:
property System::String ^ Expression { System::String ^ get(); void set(System::String ^ value); };
[System.Data.DataSysDescription("DataColumnExpressionDescr")]
public string Expression { get; set; }
public string Expression { get; set; }
[<System.Data.DataSysDescription("DataColumnExpressionDescr")>]
member this.Expression : string with get, set
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 crear una columna de agregado. El tipo de valor devuelto de una expresión viene determinado por el DataType de la columna .
- Atributos
Excepciones
La AutoIncrement propiedad o Unique se establece en true.
Cuando se usa la función CONVERT, la expresión se evalúa como una cadena, pero la cadena no contiene una representación que se puede convertir en el parámetro de tipo.
Cuando se usa la función CONVERT, la conversión solicitada no es posible. Consulte la función Conversión en la sección siguiente para obtener información detallada sobre las posibles conversiones.
Cuando se usa la función SUBSTRING, el argumento start está fuera del intervalo.
-O bien-
Cuando se usa la función SUBSTRING, el argumento length está fuera del intervalo.
Cuando se usa la función LEN o la función TRIM, la expresión no se evalúa como una cadena. Esto incluye expresiones que se evalúan Charcomo .
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 obtener más información sobre esta API, consulte Comentarios complementarios de api para DataColumn.Expression.