VB.NET是否可以在不定义本地异常变量的情况下捕获异常?

VB.NET是否可以在不定义本地异常变量的情况下捕获异常?,vb.net,exception-handling,c#-to-vb.net,Vb.net,Exception Handling,C# To Vb.net,在C#中,您可以执行以下操作: try { // some code here } catch (MyCustomException) { // exception code here } catch (Exception) { // catches all other exceptions } 注意catch(Type)而不是catch(Type myVariable)。对于VB.NET,这是可能的,还是在捕获异常类型时始终必须声明一个变量,如: Try

在C#中,您可以执行以下操作:

try
{
    // some code here
}
catch (MyCustomException)
{
    // exception code here
}
catch (Exception)
{
    // catches all other exceptions
}
注意
catch(Type)
而不是
catch(Type myVariable)
。对于VB.NET,这是可能的,还是在捕获异常类型时始终必须声明一个变量,如:

    Try
        ...
    Catch var As NullReferenceException
        ...
    Catch var As Exception
        ...
    End Try

必须在vb.net中声明。 事实上,当您键入
try
时,您的ide应该输入异常类型并格式化它

像这样:

Try
Catch e As Exception
End Try

必须在vb.net中声明。 事实上,当您键入
try
时,您的ide应该输入异常类型并格式化它

像这样:

Try
Catch e As Exception
End Try

万一搜索引擎把其他人带到这里

C#还有一种语法,您不必指定类型:

试试{}
捕获{}
我相信这也将捕获非从System.Exception派生的非托管异常。VB.NET也可以这样做:


万一搜索引擎把其他人带到这里

C#还有一种语法,您不必指定类型:

试试{}
捕获{}
我相信这也将捕获非从System.Exception派生的非托管异常。VB.NET也可以这样做:


VB.NET没有给你变量“ex”被声明但从未被使用的警告,如果你声明它并且不使用它,你会在C#中得到警告。是的,Visual Studio会这样做,这是我害怕的。我会把这个放在我的“C#更擅长的事情清单”上。谢谢。)@SpikeX-VB.net非常冗长。我使用它是因为我必须这样做,而不是因为我想这样做@SimenS Visual Studio给了我VB.NET的警告,而VB.NET没有给你变量“ex”被声明但从未被使用的警告,如果你声明它并且不使用它,你会在C#中得到这个警告。是的,Visual Studio会这样做,这是我害怕的。我会把这个放在我的“C#更擅长的事情清单”上。谢谢。)@SpikeX-VB.net非常冗长。我使用它是因为我必须这样做,而不是因为我想这样做@西门子Visual Studio为VB.NET提供了这一警告。