使用ASP.NET MVC 5和Xero.API.SDK.2.2.1.13。
我正在尝试处理在调用Xero Api时引发的所有可能的错误。我正在尝试通过在BaseController中执行OnException操作来实现这一点。这样可以成功捕获所有引发的错误,但是在调试时,我无法访问ValidationErrors列表,该列表似乎包含在filterContext对象(请参见下文)中。我也无法从filterContext对象创建XeroApi.ValidationException对象。
有谁知道在这种情况下如何访问ValidationErrors?还是有一种更合适的方式在单个 Controller 中处理所有Xero和其他相关错误?
protected override void OnException(ExceptionContext filterContext)
{
//Below line results in error: "cannot convert System.Exception to
ValidationException. An Explicit conversion exists".
ValidationException ex = filterContext.Exception;
Exception ex = filterContext.Exception;
filterContext.ExceptionHandled = true;
}
最佳答案
Henzard Kruger在Xero社区论坛上提供的答案:
只需破解Xero dll。您需要处理https://github.com/XeroAPI/Xero-Net/blob/master/Xero.Api/Infrastructure/Http/XeroHttpClient.cs#L105中的错误,然后重新编译DLL。
遵循上述建议后,问题已解决。