>我有一个有 1 列的表格:"状态"我想添加另一列名为"操作",其值如下:如果状态 = "是",则操作 = "开始",否则,操作 = "停止"。我使用以下代码在"操作"列中添加,但它不起作用:
myDataTable.Columns.Add("Action", typeof(string), "IF [Status] = 'Yes' THEN 'Go' ELSE 'Stop' END");
您要查找的表达式是:
IIF( [Status] = 'Yes', 'Go', 'Stop' )
数据表不支持标准的 SQL CASE
语句,也不支持"IF...否则"的声明。您必须使用内联 if 函数:IIF
请参阅 DataColumn.Expression Property (MSDN(
不知道
从什么时候开始,但现在支持它,您可以使用 IIF 函数作为列表达式(在此处查看(
示例:myDataColumn.Expression = "**IIF(total>1000, 'expensive', 'dear')**"