【发布时间】:2026-02-09 19:40:02
【问题描述】:
我有一个 MVC 应用程序,我正在构建一个学习项目。我有一张带有收款人的表格,还有一张带有类别的表格。某些收款人可以进行某些类别的交易。例如,收款人 A 可以向 A、B 和 C 类付款。收款人 B 可以向 B、C 和 D 类付款。
所以,我有一个 PayeeCategory 链接表,其中包含一个 PayeeId 和一个 CategoryId。
因此,请查看收款人可以进行交易的类别,这是从 PayeeCategory 中选择的简单方法,其中 PayeeId = this.PayeeId。然后我加入 Category 表以获取类别名称。
在视图中,当我编辑一个 Payee 时,我需要显示所有类别的列表,并允许用户选择或取消选择当前 Payee 关联的类别。
因此,在我的 ViewModel 中,我有一个 categorySelectableItems 列表,其中可能包含 CategoryId、DisplayName 和一个 Selected 布尔字段。要获取数据,我需要从类别中选择,LEFT JOIN PayeeCategory,其中 PayeeCategoryId 为 null,将 Selected 设置为 false,否则设置为 true。
我将如何在单个 Linq 语句中做到这一点?
那么,当数据返回时……我将如何保存数据?我是否必须删除所有关系,然后根据返回的 List 值重新添加它们?
希望有人可以指导我。
【问题讨论】:
标签: entity-framework asp.net-mvc-2 linq-to-entities