0

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

如果列 Status = '0' Then Action = 'Start',
如果列 Status = '1' Then Action = 'Ready',
如果列 Status = '2' Then Action = 'Go',

如何添加带有这样的表达式的列?

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

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

1 回答 1

0

您的引号不匹配,并且您缺少 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

于 2013-10-11T21:10:34.733 回答