可能重复:
Modeling a many-to-many relationship in ASP.NET MVC using LINQ to SQL
你好,
这个问题的简短版本是“有没有办法优雅地处理具有在部分类中设置的多对多字段的对象的数据库插入?”如果之前有人问过,请道歉。
示例
假设我有一个典型的MVC设置表:
- 帖子{PostID,...}
- 类别{CategoryID,...}
帖子可以有多个类别,一个类别可以识别多个帖子。因此,假设我需要一个额外的表:
- PostCategories {PostID,CategoryID,...}
它处理帖子和类别之间的多对多关系。据我所知,现在没有办法在Linq-to-SQL中执行此操作,因此我必须通过向项目添加部分Post类来添加该功能。类似的东西:
public partial class Post
{
public IEnumerable<Category> Categories{ get { ... } set { ... } }
}
所以我现在可以创建一个“创建”视图,自动填充“类别”UI项目。它甚至像任何其他领域一样处理乐趣!
这就是麻烦开始的地方。
所以这是我的问题:
如何让自动对象模型绑定与具有多对多关系的对象一起干净地工作?使多对多关系成为可能的解决方法依赖于具有PostID的Post对象,以便与CategoryID相关联,只有在提交了Post对象以进行验证后才会发出和插入。
这里有一个Catch22的位置。您可以提供的任何术语,链接或提示都将非常有用!