我目前正在使用Linq将sql作为我的OR-mapper。我的问题是我无法想出一种在多对多环境中进行粗略操作的方法。
读取部分没问题。我只是创建一个分部类,并使用我的关系表公开一个读取所有条目的属性。
向此添加“创建”,“更新”和“删除”功能的最佳方法是什么?
由于
答案 0 :(得分:5)
不幸的是,LINQ to SQL无法优雅地处理多对多的关系。
好处是,您可以将自定义代码添加到生成的代码中,以使事情执行得更好。通过向生成的对象添加自定义集合,可以使多对多关系的处理变得透明。
以下是启动我的博客链接。我的代码更复杂(实现IBindingList等),但这给你基本的想法:
How to implement many-to-many relationships using Linq to SQL: Part II (includes add/remove support)
这是该项目源代码的链接: