如何在 C# EF 核心 web api 中将列表转换为 Json
Posted
技术标签:
【中文标题】如何在 C# EF 核心 web api 中将列表转换为 Json【英文标题】:How to convert a List to Json in c# EF core web api 【发布时间】:2020-05-05 05:41:51 【问题描述】:我无法转换为返回 json 而不是列表。我尝试使用 Newtonsoft.Json,但没有任何效果。要么报错,要么返回null。
[HttpGet]
public IActionResult GetUsers()
using (var context = new ProjectContext())
var MyEntity = context.User.ToList();
return MyEntity;
用户模型
using System;
using System.Collections.Generic;
namespace Project.Models
public partial class User
public User()
Order= new HashSet<Order>();
public int IdUser get; set;
public string Name get; set;
public string Tel get; set;
public float? Stars get; set;
public virtual SellerSeller get; set;
public virtual ICollection<Order> Order get; set;
MyEntity 返回的类型是 System.Collections.Generic.List
【问题讨论】:
你能告诉我们返回 JSON,MyEntity
的类型及其模型
先确保MyEntity
不为空,然后使用return Json(new date = MyEntity , Status = "success")
context.User
是否返回了一些东西? MyEntity
的价值是什么
当你使用 newtonsoft 时,列出的对象是否在其属性上具有序列化属性? [JsonProperty]
@JamesLoForti 我用var json = jsonSerialiser.Serialize (aList) ;
做到了。由于返回了错误的方法,我给出了一个错误。菜鸟错误。
【参考方案1】:
试试这个。
[HttpGet]
public IActionResult GetUsers()
using (var context = new ProjectContext())
var MyEntity = context.User.ToList();
return Ok(MyEntity);
【讨论】:
【参考方案2】:使用以下内容作为Json返回
return Json(new data = MyEntity, Status = "Success" , JsonRequestBehavior.AllowGet);
【讨论】:
我收到此错误“无法将类型'System.Web.Mvc.JsonResult'隐式转换为'System.Collections.Generic.IEnumerable以上是关于如何在 C# EF 核心 web api 中将列表转换为 Json的主要内容,如果未能解决你的问题,请参考以下文章
带有 EF Core 更新实体的 ASP.Net 核心 Web Api 如何
如何在 vscode 中将 `System.Web.Extensions` 程序集添加到 .net 核心项目
C# EF6 使用 Unity 对一个上下文进行多次异步调用 - Asp.Net Web Api
基于.net EF6 MVC5+WEB Api 的Web系统框架总结-Web前端页面