如何从 Razor 页面返回带有 HTTP 状态代码 500 的 JsonResult?
Posted
技术标签:
【中文标题】如何从 Razor 页面返回带有 HTTP 状态代码 500 的 JsonResult?【英文标题】:How to return JsonResult with HTTP Status Code 500 from Razor Page? 【发布时间】:2022-01-24 05:37:36 【问题描述】:在我的 ASP.NET Core Razor Pages 应用程序中,我有时会通过 ajax 向服务器发送请求。
在这些情况下,我想返回 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?
【问题讨论】:
在JsonResult
对象上设置.StatusCode
?
【参考方案1】:
您可以将 StatusCode 分配给JsonResult
,如下所示:
using System.Net;
return new JsonResult(message)
StatusCode = (int)HttpStatusCode.InternalServerError
;
参考文献
JsonResult class Properties
【讨论】:
以上是关于如何从 Razor 页面返回带有 HTTP 状态代码 500 的 JsonResult?的主要内容,如果未能解决你的问题,请参考以下文章
Asp.net Core 3.1-如何从控制器返回到 Razor 页面?
ASP .NET Core 5 Razor Pages:如何正确使用局部视图并验证其模型状态?