转载自:http://msdn.microsoft.com/zh-cn/library/bb629295.aspx
LINQ to SQL 中实体类之间的关联类似于数据库中表之间的关系。可以使用“关联编辑器”
对话框创建实体类之间的关联。
使用“关联编辑器”
对话框创建关联时,必须选择父类和子类。父类是包含主键的实体类;子类是包含外键的实体类。例如,如果创建映射到 Northwind Customers 和 Orders 表的实体类,则 Customer 类将是父类,而 Order 类将是子类。
将表从“服务器资源管理器”
/“数据库资源管理器”
拖动到对象关系设计器(O/R 设计器)上时,将根据数据库中现有的外键关系自动创建关联。
创建关联后,当您在 O/R 设计器中选择该关联时,“属性”
窗口中将有一些可配置属性。(关联是用相关类之间的连线表示的。)下表提供对关联的属性的说明。
<!-- -->
属性
说明
基数
|
控制关联是一对多关系还是一对一关系。
|
子属性
|
指定是否在父类上创建一个属性,作为关联关系外键一方上的子记录的集合或对这些子记录的引用。例如,在 Customer 和 Order 之间的关联中,如果“子属性”
设置为“True”
,则将在父类上创建一个名为 Orders 的属性。
|
父属性
|
子类上引用关联父类的属性。例如,在 Customer 和 Order 之间的关联中,在 Order 类上创建一个名为 Customer 的属性,用来引用与订单关联的客户。
|
参与属性
|
显示关联属性,并提供一个“省略号”
按钮 (...),该按钮可重新打开“关联编辑器”
对话框。
|
唯一
|
指定外目标列是否具有唯一性约束。
|
创建实体类之间的关联
-
右击表示关联中的父类的实体类,指向“添加”
,然后单击关联
。
-
验证在“关联编辑器”
对话框中是否选择了正确的“父类”
。
-
选择组合框中的“子类”
。
-
选择实现类之间的关联的“关联属性”
。通常,这种关联对应于数据库中定义的外键关系。例如,在 Customers 和 Orders 关联中,“关联属性”
是每个类的 CustomerID。
-
单击“确定”
创建关联。
分享到:
相关推荐
当实体类间定义了正确的关联属性后,Linq To Sql会在后台自动创建必要的表结构和关联关系。 #### 3. Linq To Sql进阶系列(三)CUD和Log ##### CUD操作 - **Create、Update、Delete**:这是数据库中最基本的操作...
- **关联和导航属性**:通过定义关系,可以在实体之间建立关联,LINQ to SQL会自动处理关联数据的加载和保存。 - **延迟加载**:默认情况下,关联数据在需要时才加载,这是为了提高性能,但也可以通过设置...
- **易用性**:LINQ to SQL 提供了一种简洁的方法来创建与 SQL Server 数据库对应的类,并允许开发者使用 LINQ 查询语言进行数据操作。 - **性能**:由于 LINQ to SQL 与 SQL Server 的紧密集成,它可以提供较好的...
21. **User-Defined Functions**:创建和使用自定义函数以扩展 LINQ to SQL 的功能。 22. **DataContext**:`DataContext` 类是 LINQ to SQL 的核心,它封装了与数据库的会话,并负责对象的持久化。 23. **Dynamic...
6. **关系映射**:在LINQ to SQL中,表之间的关系(如外键约束)被映射为类之间的导航属性。这使得开发者可以方便地处理一对多、多对一、多对多的关系,如通过导航属性获取相关的数据记录。 7. **查询优化**:虽然...
学习 Linq to Sql,不仅要掌握以上基础知识,还需要理解如何创建数据上下文,定义实体类,使用 LINQ 查询语法进行增删改查操作,以及处理关联关系等高级话题。此外,了解 LINQ 的其他组成部分如 Linq to Objects、...
LINQ to SQL还支持延迟加载,即当需要时才加载关联的对象,这有助于减少数据库交互次数,提高性能。另外,它提供了事务支持,可以在一组操作中确保数据一致性。 总的来说,LINQ to SQL提供了一种优雅的方式来进行...
LINQ to SQL 是 LINQ 的一个特定实现,专门用于与关系数据库进行交互。 在B/S技术三层框架下使用LINQ to SQL,通常涉及以下关键步骤: 1. **项目结构**:首先,创建一个ASP.NET 3.5项目,并按照三层架构组织代码,...
创建LINQ to SQL实体类的映射是使用LINQ to SQL访问数据库的第一步。实体类的属性映射到数据库表或视图中的列(字段)。创建实体类映射的方法包括手动编码和使用XML文件映射,但在Visual Studio平台中,使用对象关系...
通过 LINQ to SQL 设计器,可以直观地将数据库表转换为实体类,并管理它们之间的关系。 4. **关系映射**:设计器会根据数据库中的主键/外键关系生成实体类之间的关联。这些关系可以是一对一或一对多,生成的实体类...
其中,LINQ to SQL 是专门用于操作 SQL Server 数据库的组件,它将数据库表映射为 C# 或 VB.NET 类,使开发者能以面向对象的方式编写数据库操作代码。 ### LINQ to Object 初体验 在 LINQ 中,LINQ to Object 是...
- **自定义映射**:如何使用 LINQ to SQL 的高级特性来自定义实体与数据库之间的映射关系。 6. **并发与事务处理**: - **并发控制**:解决多个用户同时修改同一数据的问题。 - **事务管理**:确保数据的一致性和...
Linq to SQL 支持实体间的继承关系和关联关系,这使得实体模型可以更好地反映现实世界中的复杂关系,提高了代码的复用性和可扩展性。 #### 10. 分层架构示例 Linq to SQL 通常被应用于分层架构中的数据访问层,...
LINQ to SQL是LINQ的一个具体实现,主要用于与关系数据库进行交互。这篇教程将帮助初学者理解并掌握LINQ to SQL的基本概念和用法。 ### 一、什么是LINQ to SQL LINQ to SQL 是.NET Framework 3.5引入的一种数据...
LINQ to SQL 自动处理对象和关系数据之间的映射,减少了手动编码的工作量。 ##### 3. **延迟加载 (Lazy Loading)** LINQ to SQL 支持延迟加载,这意味着只有在实际需要数据时才会从数据库中加载,从而提高应用程序...
创建Linq to SQL数据模型 首先,你需要创建一个Linq to SQL数据模型。这通常通过在Visual Studio中添加新的"LINQ to SQL Classes"项实现,该过程会生成一个.dbml文件。在设计视图中,你可以从数据库中拖拽表和视图...
【创建LINQ to SQL数据上下文】 在LINQ to SQL中,数据上下文(DataContext)是连接到数据库的主要类,它是所有数据库操作的基础。创建数据上下文通常涉及以下步骤: 1. 创建一个新的DBML文件:在Visual Studio中...