什么是以下C#布尔表达式的Visual Basic等价物?
data.GetType() == typeof(System.Data.DataView)
Run Code Online (Sandbox Code Playgroud)
注意:变量data声明为IEnumerable.
Pow*_*ord 77
据我回忆
TypeOf data Is System.Data.DataView
Run Code Online (Sandbox Code Playgroud)
编辑:
正如James Curran指出的那样,如果数据也是System.Data.DataView的子类型,则可以正常工作.
如果您只想将其限制为System.Data.DataView,这应该工作:
data.GetType() Is GetType(System.Data.DataView)
Run Code Online (Sandbox Code Playgroud)
Rom*_*kov 36
我想我会发布一个有关C#程序员的好处的摘要:
val is SomeType 在VB.NET中: TypeOf val Is SomeType
与Is此不同,这只能被否定为Not TypeOf val Is SomeType
typeof(SomeType) 在VB.NET中: GetType(SomeType)
val.GetType() == typeof(SomeType) 在VB.NET中: val.GetType() = GetType(SomeType)
(虽然Is也有效,见下)
val.ReferenceEquals(something) 在VB.NET中: val Is something
可以很好地否定: val IsNot something
val as SomeType 在VB.NET中: TryCast(val, SomeType)
(SomeType) val 在VB.NET中: DirectCast(val, SomeType)
(除了涉及的类型实现了一个演员操作员)