自从我使用 Linq-to-Sql 以来已经有一段时间了,但我又开始尝试了。我遇到了一个问题,我希望能够以我以前认为的某种方式访问数据,但我现在不确定。
如果我有以下三个 SIMPLE 表
Person
- ID
Section
- ID
PersonSections
- PersonID
- SectionID
PersonSections 表只是对 Person/Section 对象的查找。因此它是一对多的。一个人可以在多个部门。
我希望能够通过以下方式从 Linq-to-Sql DataContext 调用它。
MyDataContext db = new MyDataContext();
var person = db.Sections.First(x => ...).Persons.First(x => x...) etc
or
var section = db.Persons.First(x => ...).Sections(x => x...) etc
我正在努力寻找更多关于这些关系的文档,因为我在这方面有点新手,所以请不要批评。
最佳答案
您提到了人与节之间的一对多关系。
LINQ2SQL 对关系表的处理不是很好,因此最初我建议将部分 ID 设为人员表的外键。
还有这个帖子
http://www.codeproject.com/Articles/39104/LINQ-to-SQL-Many-to-Many-Relationships
这解释了如何建立多对多关系。这可能是相同的,然后您可以在您的应用程序中添加逻辑来阻止双向关系。
关于c# - LINQ-to-SQL 关系/关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13945287/