【问题标题】:Returning relational objects with oData and EFCore使用 oData 和 EFCore 返回关系对象
【发布时间】:2020-01-21 05:56:56
【问题描述】:

我可以使用具有以下控制器功能的 linq 和实体框架核心获取关系数据。但是,当我尝试使用 oData 时,它会忽略关系数据。

我需要执行额外的步骤吗?没有错误,但它只是忽略了响应中的关系数据。

    [HttpGet]
    [EnableQuery]
    public IEnumerable<User> Get()
    {
        IEnumerable<User> users;
        using (var context = new DivDbContext())
        {
            users = context.Users.Include(user => user.UserClaims).ToList();
        }

        return users;
    }

【问题讨论】:

    标签: c# api asp.net-core entity-framework-core odata


    【解决方案1】:

    我想通了。 oData 要求您通过 URL 显式请求扩展对象。我可以通过添加 $expand=________ 任何我想扩展的属性来做到这一点。

    https://localhost:44354/odata/users?$expand=userClaims

    也就是说,我不确定如何使用这种语法处理嵌套属性。 UserClaims 有一个声明属性,也可以很好地扩展。

    【讨论】:

    猜你喜欢
    • 2021-10-01
    • 1970-01-01
    • 2017-08-30
    • 1970-01-01
    • 2017-01-29
    • 1970-01-01
    • 2021-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多