要使ASP.NET API的响应返回JSON,您可以按照以下步骤操作:
确保您的API控制器方法中的返回类型为ActionResult或具体的ActionResult
使用JsonResult类作为返回类型。JsonResult允许您将对象序列化为JSON格式并返回给客户端。
以下是一个示例代码:
using Microsoft.AspNetCore.Mvc;
[ApiController]
[Route("api/[controller]")]
public class MyController : ControllerBase
{
[HttpGet]
public ActionResult Get()
{
MyModel model = new MyModel()
{
Id = 1,
Name = "John Doe"
};
return new JsonResult(model);
}
}
public class MyModel
{
public int Id { get; set; }
public string Name { get; set; }
}
在上面的代码中,我们定义了一个名为MyController的API控制器,并在Get方法中返回一个MyModel对象。返回类型为ActionResult
当客户端请求该API时,将返回如下JSON响应:
{
"id": 1,
"name": "John Doe"
}
确保您在项目中安装了Microsoft.AspNetCore.Mvc包,以便使用JsonResult类。您可以使用NuGet包管理器或添加以下包引用来安装此包:
这是解决ASP.NET API响应不返回JSON的一种方法,还有其他方法可以实现类似的结果,具体取决于您的需求和项目架构。