什么是C#“is”关键字的VB.NET等价物?
我需要检查一个给定的对象是否实现了一个接口。 在C#中,我会简单地说:
if (x is IFoo) { }  是使用TryCast() ,然后检查Nothing最好的办法? 
尝试以下
 if TypeOf x Is IFoo Then ... 
喜欢这个:
 If TypeOf x Is IFoo Then 
使用此在线Web解决scheme将C#转换为VB.NET,以及其他一些代码转换。
直接翻译是:
 If TypeOf x Is IFoo Then ... End If 
但是(回答你的第二个问题)如果原始代码写得更好
 var y = x as IFoo; if (y != null) { ... something referencing y rather than (IFoo)x ... } 
好的,
 Dim y = TryCast(x, IFoo) If y IsNot Nothing Then ... something referencing y rather than CType or DirectCast (x, IFoo) End If 
更好。