私は4つのテーブルを持っています:
- アカウント
- 写真
- AccountPhotos (AccuntID、PhotoID) - 各アカウントの購入した写真の記録を保持します
- AccountFlagPhotos (AccountID, PhotoID) - 各アカウントのフラグ付き写真の記録を保持します
したがって、同じ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();
}
問題は、今回は同じ 2 つのテーブル間に 2 つの多対多の関係があることです。上記のコードで、どのテーブル (テーブル 3 または 4) からレコードを取得するかを決定するにはどうすればよいですか?