如何在 DataColumn.Expression 中使用 CASE WHEN



我有一个包含 1 列的表:"状态"我想在另一列名为"操作"中添加,其值如下:

如果列状态 = '0',则操作 ='开始',如果列状态 = "1",则操作 ="就绪",如果列状态 = '2',则操作 ='Go',

如何添加带有此类表达式的列?

我尝试了以下方法,但它不起作用:

 myDataTable.Columns.Add("Action", "CASE (WHEN [Status] = '0') THEN "Start")

引号不匹配,并且缺少 Add 方法的列类型参数。

此外,表达式似乎不支持 CASE 语句。 请改用嵌套 IIF:

试试这个:

workTable.Columns.Add("Action", 
                      typeof(string), 
                      "IIF([Status] = '0', 'Start', IIF([Status] = '1', 'Ready', 'Go'))");

文档:http://msdn.microsoft.com/en-us/library/system.data.datacolumn.expression.aspx

相关内容

  • 没有找到相关文章

最新更新