Condividi tramite


DataColumn.Expression Proprietà

Definizione

Ottiene o imposta l'espressione utilizzata per filtrare righe, calcolare i valori di una colonna o creare una colonna aggregata.

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

Valore della proprietà

Espressione per calcolare il valore di una colonna o creare una colonna aggregata. Il tipo restituito di un'espressione è determinato dalla proprietà DataType della colonna.

Attributi

Eccezioni

La proprietà AutoIncrement o la proprietà Unique è impostata su true.

Quando si utilizza la funzione CONVERT, l'espressione viene valutata in una stringa, ma la stringa non contiene alcuna rappresentazione convertibile nel parametro del tipo.

Quando si utilizza la funzione CONVERT, non è possibile eseguire il cast richiesto. Per informazioni dettagliate sui cast possibili, vedere la funzione Conversion nella sezione seguente.

Quando si utilizza la funzione SUBSTRING, l'argomento start non rientra nell'intervallo.

Oppure

Quando si utilizza la funzione SUBSTRING, l'argomento length non rientra nell'intervallo.

Quando si utilizza la funzione LEN o TRIM, l'espressione non viene valutata in una stringa. Sono incluse le espressioni che vengono valutate in Char.

Esempio

Nell'esempio seguente vengono create tre colonne in un oggetto DataTable. La seconda e la terza colonna contengono espressioni; il secondo calcola l'imposta usando un'aliquota fiscale variabile e il terzo aggiunge il risultato del calcolo al valore della prima colonna. La tabella risultante viene visualizzata in un DataGrid controllo .

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

Commenti

Per altre informazioni su questa API, vedere Note sulle API supplementari per DataColumn.Expression.

Si applica a

Vedi anche