私はMVCアプリケーションを持っています。私は学習プロジェクトとして構築しています。私はPayeesを持つテーブルとカテゴリーを持つテーブルを持っています。特定の受取人は、特定のカテゴリの取引を行うことができます。たとえば、受取人AはカテゴリA、B、Cに支払いを行うことができます。受取人Bは多分カテゴリB、C、Dへの支払いです。多対多の処理 - Entity Framework
したがって、私はPayeeIdとCategoryIdを持つPayeeCategoryリンクテーブルを持っています。
PayeeId = this.PayeeIdのPayeeCategoryから選択すると、受取人が処理できるカテゴリが表示されます。カテゴリテーブルに参加してカテゴリ名を取得します。
受取人を編集する際に、すべてのカテゴリのリストを表示し、現在の受取人が関連付けられているカテゴリを選択または選択解除する必要があります。
私のViewModelには、categoryId、DisplayNameおよびSelectedブール値フィールドを持つcategorySelectableItemsのリストがあります。データを取得するには、カテゴリから選択し、LEFT JOIN PayeeCategoryを選択し、PayeeCategoryIdがnullの場合は、Selectedをfalseに設定します。そうでない場合はtrueに設定します。
1つのLinqステートメントではどうすればよいですか?
その後、データが戻ってきたらどうすればデータを保存できますか?すべての関係を削除してからリスト<>値に基づいて再追加する必要がありますか?
誰かが私を導くことを望みます。