如何从 Razor 页面 return 带有 HTTP 状态代码 500 的 JsonResult?
How to return JsonResult with HTTP Status Code 500 from Razor Page?
在我的 ASP.NET Core Razor Pages 应用程序中,我有时会通过 ajax 向服务器发送请求。
在那些情况下,我想 return JsonResult
无论是成功还是错误。
但我找不到更改 JsonResult
的 HTTP 状态代码的方法。
这是我的方法:
public IActionResult OnPostFileUpload()
{
try
{
// code to manage and save the file, this request is AJAX
return new JsonResult("done");
}
catch (Exception ex)
{
return new JsonResult(message); // how should I set it to be 500?
}
}
您可以将 StatusCode 分配给 JsonResult
,如下所示:
using System.Net;
return new JsonResult(message)
{
StatusCode = (int)HttpStatusCode.InternalServerError
};
参考资料
在我的 ASP.NET Core Razor Pages 应用程序中,我有时会通过 ajax 向服务器发送请求。
在那些情况下,我想 return JsonResult
无论是成功还是错误。
但我找不到更改 JsonResult
的 HTTP 状态代码的方法。
这是我的方法:
public IActionResult OnPostFileUpload()
{
try
{
// code to manage and save the file, this request is AJAX
return new JsonResult("done");
}
catch (Exception ex)
{
return new JsonResult(message); // how should I set it to be 500?
}
}
您可以将 StatusCode 分配给 JsonResult
,如下所示:
using System.Net;
return new JsonResult(message)
{
StatusCode = (int)HttpStatusCode.InternalServerError
};