Ale*_*lex 5 sql linq foreign-keys
是否可以在 LINQ 中拥有类似 ContactAddress.Contact 的内容,而无需在 SQL Server 中在这两者之间创建外键关系(即 Contact.Id <-> ContactAddress.ContactId)?
是的,您可以定义目标数据库中不存在的外键。LINQ to SQL 生成的联接最终将是相同的,我的意思是:
from category in db.Categories
from product in category.Products
select new
{
Category = category,
Product = product
}
Run Code Online (Sandbox Code Playgroud)
将生成与此相同的 T-SQL:
from category in db.Categories
join product in db.Products on category.CategoryId equals product.CategoryId
select new
{
Category = category,
Product = product
}
Run Code Online (Sandbox Code Playgroud)
这将是这样的:
SELECT
*
FROM
Category INNER JOIN Product ON Category.CategoryId = Product.CategoryId
Run Code Online (Sandbox Code Playgroud)
这是一种使遗留模式更可用的有用技术。
如果要在对象关系映射中创建关系(即使数据库中不存在该关系作为声明的外键),则可以使用对象关系设计器来执行此操作。
http://msdn.microsoft.com/en-us/library/bb629295.aspx
| 归档时间: |
|
| 查看次数: |
4459 次 |
| 最近记录: |