【发布时间】:2017-12-01 00:03:55
【问题描述】:
我有 3 个具有一对多关系的相关实体。 帐号 1-* 收藏 1-* 物品
每个都与用户有多对多的关系,(与连接表 AccountManagers 、 CollectionManagers 、 ItemManagers )
如果用户在任何连接表中,我正在尝试获取用户的集合列表。 我在想创建 3 个表达式,然后在最后合并 3 个结果并以某种方式删除重复项。 似乎 Lambda 表达式是要走的路,但我仍在学习它们。
我认为中间的更容易,比如 db.Collections.where(C => C.CollectionManagers.UserID == CurrentUserID)
但是您将如何从用户帐户管理器和项目管理器条目中收集集合列表?
提前致谢
【问题讨论】:
-
我假设
CollectionManagers是一个多对多的列表,所以你需要更像Collections.Where(c => c.CollectionManagers.Any(a => a.UserID == CurrentUserID))的东西。 -
如果您发布您正在谈论的实体类的相关部分(尤其是导航属性),它会更容易帮助您。
标签: entity-framework asp.net-web-api lambda linq-to-sql