.NET Core 5.0 API如何将JSON数组封装到JSON对象中返回
解决方案
你只需要把查询得到的用户集合放到一个包含users字段的对象中返回即可,有两种常用实现方式:
方式一:使用匿名类型快速实现
无需额外定义类,直接修改接口代码即可:
[HttpGet("/User")] public async Task<ActionResult<object>> GettokenAuths() { var users = await _context.tokenAuths.ToListAsync(); // 用匿名对象包裹数组 return Ok(new { users = users }); }
方式二:定义强类型返回模型(更推荐)
这种方式更符合.NET开发规范,也方便后续接口维护、Swagger文档生成:
- 先定义返回结构的类
public class UserListResult { public IEnumerable<TokenAuth2Model> Users { get; set; } }
- 修改接口返回值类型,返回对应强类型对象
[HttpGet("/User")] public async Task<ActionResult<UserListResult>> GettokenAuths() { var userList = await _context.tokenAuths.ToListAsync(); return Ok(new UserListResult { Users = userList }); }
以上两种方式默认都会按照.NET Core的JSON序列化规则自动转成驼峰命名,最终输出的结构就是你需要的带users字段包裹的JSON对象。
内容的提问来源于stack exchange,提问作者Elnur Ceferli
相关产品推荐
相关产品推荐

