在try finally块中记录异常详细信息

Ton*_*onE 4 .net c# logging exception

我有一小段代码调用webservice客户端方法.

该方法返回一个消息数组作为out参数.这些消息通常包含已发生的任何错误的详细信息.发生错误时,也会引发异常.

我想记录消息,无论是抛出异常还是异常类型.登录finally块是否可以接受?

WebServiceClient client = GetWebServiceClient();
Console.WriteLine("Calling getUpdates...");
ItemStatus[] itemStatuses;
Message[] messages = null;
string outToken;
try
{
     outToken = client.getUpdates(inToken, out itemStatuses, out messages);
}
finally
{
     LogMessages(messages);
}
Run Code Online (Sandbox Code Playgroud)

Dar*_*ren 6

是的,将始终执行finally块(即使未抛出异常).因此,将Logging置于此上下文中是有意义的.