Sdílet prostřednictvím


DataColumn.Expression Vlastnost

Definice

Získá nebo nastaví výraz použitý k filtrování řádků, výpočet hodnot ve sloupci nebo vytvoření agregačního sloupce.

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

Hodnota vlastnosti

Výraz pro výpočet hodnoty sloupce nebo vytvoření agregačního sloupce. Návratový typ výrazu je určen sloupcem DataType .

Atributy

Výjimky

Vlastnost AutoIncrement nebo Unique je nastavena na truehodnotu .

Při použití funkce CONVERT se výraz vyhodnotí jako řetězec, ale řetězec neobsahuje reprezentaci, kterou lze převést na parametr typu.

Pokud používáte funkci CONVERT, požadované přetypování není možné. Podrobné informace o možných přetypováních najdete v části Funkce Převod v následující části.

Při použití funkce SUBSTRING je argument start mimo rozsah.

- nebo -

Při použití funkce SUBSTRING je argument délka mimo rozsah.

Když použijete funkci DÉLKA nebo FUNKCI TRIM, výraz se nevyhodnotí jako řetězec. To zahrnuje výrazy, které se vyhodnocují jako Char.

Příklady

Následující příklad vytvoří tři sloupce v DataTable. Druhý a třetí sloupec obsahují výrazy; druhý vypočítá daň pomocí proměnné daňové sazby a třetí přičte výsledek výpočtu k hodnotě prvního sloupce. Výsledná tabulka se zobrazí v ovládacím DataGrid prvku.

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

Poznámky

Další informace o tomto rozhraní API najdete v tématu Doplňkové poznámky k rozhraní API pro DataColumn.Expression.

Platí pro

Viz také