colB.Expression = IIF(colA = stringA,stringB,stringC)

时间:2018-04-11 07:57:52

标签: vb.net datatable iif datacolumn

在我的DataTable中,我有两列:

With colA
            .DataType = System.Type.GetType("System.String")
            .ColumnName = "colA"
End With
With colB
            .DataType = System.Type.GetType("System.String")
            .ColumnName = "colB"
End With

我想将.expression添加到colB,它将测试colA中的字符串值,如果为True则设置字符串值,如果False则设置另一个字符串值。

这样的一件事:

colB.Expression = IIF(colA="toto", "cool", "not cool")

但我的语法有困难。每次表达式的评估都是假的。

更新 我尝试这个和这项工作:

colB.Expression = "IIF([colA] = 'stringA', 'stringB', 'stringC')"

但是现在,如果我想测试一个空值,那么语法是什么?

1 个答案:

答案 0 :(得分:0)

测试为空:

colB.Expression = "IIF([colA] = '', 'stringB', 'stringC')"

测试null:

colB.Expression = "IIF([colA] IS NULL, 'stringB', 'stringC')"

测试null或空:

colB.Expression = "IIF([colA] = '' or [colA] IS NULL, 'stringB', 'stringC')"