题
在本示例中,错误提出了如果任何一 row.FirstName
或 row.LastName
都 NULL
.
我怎么重写 Select
条款,把一个DBNull值的一个空白的字符串 ""
?
Dim query = From row As myDataSet.myDataRow in myDataSet.Tables("MyData") _
Select row.FirstName, row.LastName
注:由于数据集是强类型。我可以使用 row.isFirstNameNull()
, 但 IIF(row.isFirstNameNull(), "", row.FirstName)
不会的工作,因为所有参数都引用。
解决方案
你注意到你提到 IIf(row.isFirstNameNull(), "", row.FirstName)
替换 If(row.isFirstNameNull(), "", row.FirstName)
这将不评估虚假的部分,如果条件是真实的
其他提示
使用 VB的三操作员 "如果":
Dim query = From row As myDataSet.myDataRow in myDataSet.Tables("MyData") _
Select if(row.isFirstNameNull(), "", _
row.FirstName), if(row.isLastNameNull(), "", row.LastName)
怎么样 row.FirstName ?? string.Empty
不隶属于 StackOverflow