我有3个表(和相应的实体在实体模型) 游戏: 标识 - primay关键 ...等栏目如何获取ADO.NET实体模型中的外键?
球员: 标识 - 主键 ...等栏目
的游戏玩家(玩家可以参加多场比赛) 游戏ID - >国外从游戏 PlayerId键 - >国外从玩家 键...等栏目
在我的代码,我有游戏ID和p layerId可通过'其他方式提供给我。使用这个我想知道玩家(playerId)是否参与特定游戏(gameId)。所以我这样做:(实体是我的上下文对象)
的IQueryable查询= entities.GamePlayer.where(GP =>((gp.Game.Id ==游戏ID)& &(gp.Player.Id = = playerId))) 如果查询返回一行,那么我知道该玩家正在参与该游戏。
我读了多个关于实体引用的MSDN博客,我很困惑。看来,MSDN建议首先我必须检查IsLoaded的EntityReference对象,如果没有加载,我必须加载实体,然后我应该在查询中使用它。
GamePlayer确实有GamePlayer.GameReference和GamePlayer.PlayerReference,但我无法检查是否加载了引用,因为我手头没有GamePlayer对象。 GamePlayer表格包含两个1 ... *关系,以及它的相关信息。我必须使用GameId和PlayerId来查询GamePlayer。我在这里做错了什么?
我应该改为使用Player(或Game)对象(使用它们的Id)并检查GamePlayer实体集合吗? Sql非常简单。如果这太天真了,对不起,我很难将我的sql查询翻译成实体查询。