Freigeben über


DataColumn.Expression Eigenschaft

Definition

Ruft den Ausdruck ab, mit dem Zeilen gefiltert, die Werte in einer Spalte berechnet oder eine Aggregatspalte erstellt werden, oder legt diesen fest.

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

Eigenschaftswert

Ein Ausdruck, mit dem der Wert einer Spalte berechnet oder eine Aggregatspalte erstellt wird. Der Rückgabetyp eines Ausdrucks wird durch den DataType der Spalte bestimmt.

Attribute

Ausnahmen

Die AutoIncrement-Eigenschaft oder die Unique-Eigenschaft ist auf true festgelegt.

Bei der Verwendung der CONVERT-Funktion wird der Ausdruck als Zeichenfolge ausgewertet, die Zeichenfolge enthält jedoch keine Darstellung, die in den Typparameter konvertiert werden kann.

Bei der Verwendung der CONVERT-Funktion ist die angeforderte Umwandlung nicht möglich. Ausführliche Informationen zu möglichen Umwandlungen finden Sie im folgenden Abschnitt unter der Konvertierungsfunktion.

Bei der Verwendung der SUBSTRING-Funktion befindet sich das Anfangsargument außerhalb des gültigen Bereichs.

-Oder-

Bei der Verwendung der SUBSTRING-Funktion befindet sich das Längenargument außerhalb des gültigen Bereichs.

Bei der Verwendung der LEN-Funktion oder der TRIM-Funktion wird der Ausdruck nicht als Zeichenfolge ausgewertet. Dies gilt auch für Ausdrücke, die als Char ausgewertet werden.

Beispiele

Im folgenden Beispiel werden drei Spalten in einem DataTableerstellt. Die zweite und dritte Spalte enthalten Ausdrücke. die zweite berechnet die Steuer mit einem variablen Steuersatz, und der dritte fügt das Ergebnis der Berechnung dem Wert der ersten Spalte hinzu. Die resultierende Tabelle wird in einem DataGrid Steuerelement angezeigt.

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

Hinweise

Weitere Informationen zu dieser API finden Sie unter Zusätzliche API-Hinweise für DataColumn.Expression.

Gilt für:

Weitere Informationen