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

存储库仅在某些情况下获取数据

存储库仅在某些情况下获取数据

C#
HUX布斯 2021-10-24 17:52:18
我有一个 ASPNET Boilerplate 项目;下面的代码是从服务和后台作业执行的    private readonly IRepository<UserTeam> _userTeamsRepository;    [...]    public List<UserTeam> GetUsers(){        var defaultUsers = _userTeamsRepository            .GetAllIncluding(ut => ut.Team, ut => ut.User)            .Where(ut => ut.Team.AlwaysIncluded)            .ToList();    }它从表和表UserTeam之间的连接表中获取数据(一个属于多个,一个可以有多个)。UsersTeamsUserTeamsTeamUsers正如我所说,该GetUsers()方法在 Web 服务和后台作业中都被引用。使用断点我可以看到,当在 Web 服务中调用该方法时,返回的列表充满了UserTeam包含链接Team和User实体的实体(这正是我想要的)。另一方面,当它从后台作业调用时,仅Team填充该字段,而该User部分为空。这是一个非常奇怪的问题,因为这段代码是相同的,唯一不同的是它是在同一个应用程序的不同上下文中调用的。你知道什么可能导致这个问题吗?
查看完整描述

2 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

根据Tseng 评论,后台作业是跨租户的,因此它无法访问User表信息。

我通过User在将后台作业排队并将数据传递给作业的输入对象之前获取数据来解决此问题。


查看完整回答
反对 回复 2021-10-24
  • 2 回答
  • 0 关注
  • 171 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号