我只是对此感到好奇。我正在对该项目进行更改,即使用 NetSuite Web 服务,有时它会随机抛出 SoapException,“一次只能针对会话发出一个请求”。
private NetSuiteService _service;
SessionResponse response = _service.login(passport); //if SoapException, retries??
Status status = response.status;
Reference.cs:
public partial class NetSuiteService :
System.Web.Services.Protocols.SoapHttpClientProtocol
我的问题是:如果我处于调试模式,我会跟踪它,然后按 F5,它似乎会在抛出异常后自动重试(代码继续运行,没有实现 try catch 块,没有 while 循环)直到成功( status.isSuccess == true)。当我在发布模式下运行它时,作为 Windows 服务,日志显示它在引发异常后停止运行。
这怎么可能?在 try catch 块中捕获此异常并重试是否更好?