Tim*_*ter 3 c# vb.net visual-studio-2005 conditional-operator
我担心这是一个愚蠢的问题,但我必须假设我已经编程了VB.Net太长时间,现在无法弄清楚如何将这个C#null合并运算符转换为VB.Net:
if( Convert.ToBoolean(ViewState[tp.UniqueID + "_Display"] ?? true) == false ){}
Run Code Online (Sandbox Code Playgroud)
我知道IIF函数,但我不知道如何在这里使用它,如果它给出了正确的结果(在IIF中,两个表达式都在评估中).请帮助揭开黑暗的光芒.
编辑:如果你想看到这个的来源:forums.asp.net
在那里你可以看到一个生成Option Strict On disallows implicit conversions from 'Object' to 'Boolean'编译器异常的解决方案.
你想要If运算符(不是IIF函数).它可以用作C#中?:条件运算符和??空合并运算符的等价物,具体取决于它是通过3个参数还是2个
你真的想要这样的东西:
If Not ViewState[tp.UniqueID + "_Display"] is Nothing AndAlso Not CType(ViewState[tp.UniqueID + "_Display"],Boolean) Then
End If
Run Code Online (Sandbox Code Playgroud)
这至少还会让你短路.
| 归档时间: |
|
| 查看次数: |
4264 次 |
| 最近记录: |