使用LINQ从同一两个表中的多个多对多关系中检索数据

时间:2013-04-12 07:22:07

标签: linq many-to-many

我有4张桌子:

  1. 帐户
  2. 照片
  3. AccountPhotos(AccuntID,PhotoID) - 保存已购买照片的记录 对于每个帐户
  4. AccountFlagPhotos(AccountID,PhotoID) - 保存已标记的记录 每个帐户的照片
  5. 因此,我在同一个2个表之间有2对多关系,保存相同的数据,但用途不同。

    我通常在LINQ中选择多对多关系表中的记录,如下所示:

    public IQueryable<Photo> GetByAccount(string username)
        {
            //Get the specific Account record
            Account myAccount = new UserDAL().GetByID(username);
    
            //Get all photos for that account (many to many)
            return myAccount.Photos.AsQueryable();
        }
    

    问题是这次我在同一个两个表之间有两对多关系。如何在上面的代码中确定我要从哪个表(表3或4)中检索记录?

1 个答案:

答案 0 :(得分:0)

  1. 转到实体模型
  2. 右键点击关系
  3. 选择属性
  4. 使用 End2导航属性
  5. N.B:

    从图表中,您可以直接转到关系属性,方法是从特定表格的导航属性中选择关系。