选择元素类型后对象丢失参考

时间:2019-06-24 08:38:09

标签: c# entity-framework linq

我在ASP.NET Core 2.0中具有Web应用程序。我正在使用两个模型:Event和EventPermission。事件包含ByUser,标题,描述和其他列...仅提供信息。 EventPermission包括ByUser和EventId以及其他一些不重要的列。我通过EntityFramework和Linq从上下文获取EventPermission,然后仅选择“事件”,然后转换为List,并以Json的形式返回给前端的Ajax请求。但是仅选择事件后的EventPermission对象丢失了对ByUser的引用。我尝试在“选择后”中使用“包含”,但是它不起作用。

这是我的实际代码。

IIncludableQueryable<EventPermission, ApplicationUser> eventPermissions = 
                _context.EventPermissions
                .Include(x => x.ApplicationUser)
                .Where(x => x.ApplicationUser.Id == user.Id)
                .Include(x => x.Event)
                .Include(x => x.Event.ByUser);
IQueryable<Event> sharingEvents = 
                eventPermissions
                .Select(x => x.Event);

在这里您可以看到来自调试变量的结果。变量eventPermissions包含EventPermission,其中包含事件引用和Event.ByUser参考,变量sharedEvents包含从eventPermissions中选择的事件,但不包含Event.ByUser的引用。

ReferenceProblem

0 个答案:

没有答案