Создание столбцов выражений

Можно определить выражение для столбца, позволяя тем самым хранить в нем значение, вычисляемое из значений других столбцов той же строки или из значений столбцов нескольких строк таблицы. Для определения вычисляемого выражения используется свойство Expression целевого столбца, свойство ColumnName - для ссылки на другие столбцы в выражении. Тип данных DataType столбца выражения должен соответствовать типу данных значения, возвращаемого выражением.

В следующей таблице приведен список возможного использования столбцов выражений в таблице.

Тип выражения Пример
Сравнение "Total >= 500"
Вычисление "UnitPrice * Quantity"
Агрегат Sum(Price)

Свойство Expression можно задать для существующего объекта DataColumn или включить свойство в качестве третьего аргумента, переданного DataColumn конструктору, как показано в следующем примере.

workTable.Columns.Add("Total",Type.GetType("System.Double"))  
workTable.Columns.Add("SalesTax", Type.GetType("System.Double"), _  
  "Total * 0.086")  
workTable.Columns.Add("Total", typeof(Double));  
workTable.Columns.Add("SalesTax", typeof(Double), "Total * 0.086");  

Выражение может содержать ссылки на другие столбцы выражений, но циклическая ссылка, при которой два выражения ссылаются друг на друга, вызовет исключение. Правила написания выражений см. в Expression свойстве класса DataColumn .

См. также