0

可能重复:
使用 LINQ to SQL 在 ASP.NET MVC 中建模多对多关系

你好呀,

这个问题的简短版本是“有没有一种方法可以优雅地处理具有已在部分类中设置的多对多字段的对象的数据库插入?” 抱歉,如果以前有人问过。

示例
假设我有一个带有表的典型 MVC 设置:

  • 帖子 {PostID, ...}
  • 类别 {CategoryID, ...}

一个帖子可以有多个类别,一个类别可以标识多个帖子。因此,进一步假设我需要一个额外的表:

  • PostCategories {PostID, CategoryID, ...}

这处理了帖子和类别之间的多对多关系。据我所知,目前无法在 Linq-to-SQL 中执行此操作,因此我必须通过向项目中添加部分 Post 类来添加该功能,从而将其硬塞进去。就像是:

public partial class Post
{
   public IEnumerable<Category> Categories{ get { ... } set { ... } }
}

所以我现在可以创建一个自动填充“类别”UI 项的“创建”视图。它甚至可以像任何其他领域一样处理 - 有趣!

这就是麻烦开始的地方。

所以这是我的问题:
如何让自动对象模型绑定与具有多对多控制关系的对象干净地工作?使多对多关系成为可能的解决方法依赖于具有 PostID 的 Post 对象,以便与 CategoryID(s) 关联,该 CategoryID 仅在提交 Post 对象以进行验证和插入后发布。

这里有点 Catch22。您可以提供的任何术语、链接或提示都会非常有帮助!

4

0 回答 0