为了账号安全,请及时绑定邮箱和手机立即绑定

无法以 ObjectResult 的形式返回具有关系的对象

无法以 ObjectResult 的形式返回具有关系的对象

C#
摇曳的蔷薇 2021-10-31 19:04:57
我有像这样的简单控制器(第一个代码)并且它工作得很好,但是当我添加 .Include 以包含与其他表的关系时,它会立即停止返回正确的 ObjectResult (尽管填充了数据)。邮递员返回:无法得到任何响应 连接到http://localhost:51111/data/test 时出错。为什么会发生这种情况:服务器无法发送响应:确保后端工作正常 自签名 SSL 证书被阻止:通过在“设置”>“常规代理配置不正确”中关闭“SSL 证书验证”来解决此问题 确保在“设置”>“代理请求超时”中正确配置了代理:在“设置”>“常规”中更改请求超时没有异常发生,也没有字段为空。public IActionResult test(){    var user = _context.UsersTable               .SingleOrDefault(p => p.Id.ToString().Length > 0);    return new ObjectResult(user);         }public IActionResult test(){    var user = _context.UsersTable               .Include(x => x.Items)               .SingleOrDefault(p => p.Id.ToString().Length > 0);    return new ObjectResult(user);      // data IS in the user, even relational collection is filled with data, but it just does not return.   }public class User{    [Key]    public Guid Id { get;  set; }    public virtual ICollection<Item> Items { get; set; } = new HashSet<Items>();    protected User()    {    }    public User(string login, string password)    {        (...)    }}public class Item{    [Key]    public Guid Id { get; set; }    public string ItemName { get; set; }    // Relation to User    public Guid UserId { get; set; }    public virtual User User { get; set; }    protected Item()    {    }    public Item(string name, User user)    {        Id = Guid.NewGuid();        UserId = user.Id;        ItemName = name;    }}public class AppContext : DbContext{    public AppContext(DbContextOptions<AppContext> options) : base(options)    {        Database.SetCommandTimeout(20000);    }    public DbSet<User> UsersTable { get; set; }    public DbSet<Item> ItemsTable{ get; set; }    protected override void OnModelCreating(ModelBuilder modelBuilder)    {    }}到目前为止,我尝试过:user.Items = user.Items.ToList();
查看完整描述

1 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞


var options = new JsonSerializerSettings 

{

    ReferenceLoopHandling = ReferenceLoopHandling.Ignore

};


return Json(documents, options);


查看完整回答
反对 回复 2021-10-31
  • 1 回答
  • 0 关注
  • 218 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信