DataColumn.Expression Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает выражение, используемое для фильтрации строк, расчета значений в столбце либо для создания составного столбца.
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
Значение свойства
Выражение, используемое для расчета значений столбца либо создания составного столбца. Возвращаемый тип выражения определяется с помощью DataType столбца.
- Атрибуты
Исключения
Свойству AutoIncrement или Unique задано значение true
.
При использовании функции CONVERT выражение оценивает строку, но строка не содержит представление, которое может быть преобразовано в параметр типа.
При использовании функции CONVERT запрошенное приведение типов невозможно. Подробные сведения о возможном приведении см. в описании функции преобразования, приведенном в следующем разделе.
При использовании функции SUBSTRING аргумент начала находится вне диапазона.
-Или-
При использовании функции SUBSTRING аргумент длины находится вне диапазона.
При использовании функции LEN или TRIM выражение не выполняет вычисление строки. Это включает выражения, которое выполняет вычисление Char.
Примеры
В следующем примере создаются три столбца DataTableв . Второй и третий столбцы содержат выражения; второй вычисляет налог с использованием переменной ставки налога, а третий добавляет результат вычисления к значению первого столбца. Результирующая таблица отображается в элементе 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
Комментарии
Дополнительные сведения об этом API см. в разделе Дополнительные примечания API для DataColumn.Expression.