DataColumn.Expression Vlastnost

Definice

Získá nebo nastaví výraz použitý k filtrování řádků, výpočtu 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í agregovaného sloupce. Návratový typ výrazu je určen sloupcem DataType .

Atributy

Výjimky

Vlastnost AutoIncrement nebo Unique je nastavená 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í najdete ve funkci Převod v následující části.

Když použijete funkci PODŘETĚZDCE, je argument start mimo rozsah.

- nebo -

Když použijete funkci PODŘETĚZDCE, je argument délka mimo rozsah.

Při použití funkce DÉLKA nebo FUNKCE PROČISTIT se výraz nevyhodnocuje jako řetězec. To zahrnuje výrazy, které se vyhodnotí 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é sazby daně 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 prvku DataGrid .

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é