如果发生异常,如何继续运行程序?

时间:2014-08-28 12:50:41

标签: c# exception-handling

我有一个连接两台服务器的应用程序。如果无法与服务器连接,则会引发异常。我希望程序继续执行,而是尝试连接到其他服务器。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

使用try catch块。

var serversToTry = new []{"Server1", "Server2"};

foreach (var server in serversToTry)
{

    try{
       //connect to server
       return;  //if you made it this far, connection succedded.
    }
    catch (Exception e)
    {
        //log e if you want
    }
}

答案 1 :(得分:1)

只需使用转到功能try-catch

try
{
   //do something
}
catch(SpecificException ex)
{

}
catch(LessspecificException ex)
{
}
catch(EvenLessSpecificException ex)
{
}
catch(Exception ex)
{
  //general exception
}
finally
{
  //execute always!
}

注意,您可以使用多个catch语句来捕获不同的异常。首先使用最具体的异常并从那里进行概括。 finally语句是可选的,但如果你实现它,它将每次被调用,无论是否发生异常。