DataColumn.Expression Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta l'espressione utilizzata per filtrare le righe, calcolare i valori in una colonna o creare una colonna di aggregazione.
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
Valore della proprietà
Espressione per calcolare il valore di una colonna o creare una colonna di aggregazione. Il tipo restituito di un'espressione è determinato dall'oggetto DataType della colonna.
- Attributi
Eccezioni
La AutoIncrement proprietà o Unique è impostata su true.
Quando si usa la funzione CONVERT, l'espressione restituisce una stringa, ma la stringa non contiene una rappresentazione che può essere convertita nel parametro di tipo.
Quando si usa la funzione CONVERT, il cast richiesto non è possibile. Per informazioni dettagliate sui possibili cast, vedere la sezione Conversione nella sezione seguente.
Quando si usa la funzione SUBSTRING, l'argomento start non è compreso nell'intervallo.
-Or-
Quando si usa la funzione SUBSTRING, l'argomento length non è compreso nell'intervallo.
Quando si usa la funzione LEN o la funzione TRIM, l'espressione non restituisce una stringa. Sono incluse le espressioni che restituiscono Char.
Esempio
Nell'esempio seguente vengono create tre colonne in un oggetto DataTable. Le seconde e le terze colonne contengono espressioni; il secondo calcola l'imposta utilizzando un tasso di imposta 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 Osservazioni supplementari sull'API per DataColumn.Expression.