LINQ跨外键获取对象

时间:2011-01-17 16:38:15

标签: .net sql linq

我在LINQ to SQL DBML文件中设置了表之间的关联。我还在数据库中为这些表设置了外键。

我想知道是否有可能像django那样做,外键关系允许你访问该关系中的另一个“对象”。

例如,如果我有一个Customer表和一个Address表,调用customer.Address将允许我通过AddressID外键访问整个对象,所以我不想不必编写另一个查询来手动构造该对象。

这在LINQ to SQL中是否可行?

感谢。

2 个答案:

答案 0 :(得分:1)

我不知道如何使用DBML执行此操作,但它肯定是可能的。 sqlmetal工具使用从Foo到Bar的外键,将“Bar”属性添加到Foo类,将“Foos”集合属性添加到Bar类。

XSD提到了一种关联类型。这可能是一个很好的起点。您还可以将sqlmetal指向您的架构并告诉它吐出DBML,以查看它如何处理外键。

答案 1 :(得分:1)

是..如果可能,您可以修改设计器中的DBML以创建您喜欢的关系。

请参阅: http://www.hookedonlinq.com/LINQtoSQL5MinuteOverview.ashx