我使用的是一个.Net核心API。 然而,没有什么方法可以做到这一点。
目前我的基本控制器中有以下内容
using System; using Microsoft.AspNetCore.Mvc; namespace MyApi.Controllers { public class BaseController : Controller { public IActionResult RouteInterfaceMethod<TResponse>(Func<TResponse> function) { // try // { IActionResult res = null; TResponse ret = function(); res = Ok(ret); return res; // } // catch (Exception e) // { // var msg = MakeErrorMessage(e); // return base.NotFound( msg); // } } } }
找到了一个可以替代uncomment()的代码
您可以用这种方式返回InternalServerError
catch (Exception e) { var msg = MakeErrorMessage(e); return StatusCode(HttpStatusCode.InternalServerError, msg); }
或者只是重新抛出一个异常
catch (Exception e) { var msg = MakeErrorMessage(e); throw; }