若要实现 LINQ to SQL 应用程序,请遵循本主题后面介绍的步骤。 请注意,许多步骤都是可选的。 可以在其默认状态下使用对象模型。
若要快速开始,请使用对象关系设计器创建对象模型并开始对查询进行编码。
创建对象模型
第一步是从现有关系数据库的元数据创建对象模型。 对象模型根据开发人员的编程语言表示数据库。 有关详细信息,请参阅 LINQ to SQL 对象模型。
1.选择用于创建模型的工具。
有三种工具可用于创建模型。
对象关系设计器
此设计器提供丰富的用户界面,用于从现有数据库创建对象模型。 此工具是 Visual Studio IDE 的一部分,最适合小型或中型数据库。
SQLMetal 代码生成工具
此命令行实用工具提供与 O/R 设计器略有不同的选项集。 最好使用此工具对大型数据库进行建模。 有关详细信息,请参阅 SqlMetal.exe(代码生成工具)。
代码编辑器
可以使用 Visual Studio 代码编辑器或其他编辑器编写自己的代码。 如果已有数据库,并且可以使用 O/R 设计器或 SQLMetal 工具,则不建议使用此方法,这很容易出错。 但是,代码编辑器对于优化或修改已使用其他工具生成的代码可能很有价值。 有关详细信息,请参阅 如何:使用代码编辑器自定义实体类。
2.选择要生成的代码类型。
用于基于属性的映射的 C# 或 Visual Basic 源代码文件。
然后将此代码文件包含在 Visual Studio 项目中。 有关详细信息,请参阅 Attribute-Based 映射。
用于外部映射的 XML 文件。
通过使用此方法,可以将映射元数据保留在应用程序代码外。 有关详细信息,请参阅 外部映射。
注释
O/R 设计器不支持生成外部映射文件。 必须使用 SQLMetal 工具来实现此功能。
DBML 文件,可以在生成最终代码文件之前对其进行修改。
这是一项高级功能。
3.优化代码文件以反映应用程序的需求。
为此,可以使用 O/R 设计器或代码编辑器。
使用对象模型
下图显示了开发人员与两层方案中数据之间的关系。 有关其他方案,请参阅 使用 LINQ to SQL 的 N 层和远程应用程序。
有了对象模型后,可以描述信息请求并处理该模型中的数据。 你以对象模型中的对象和属性(而不是数据库行和列)来思考。 你不直接处理数据库。
当您指示 LINQ to SQL 执行您已描述的查询或对已操作的数据调用 SubmitChanges()
时,LINQ to SQL 会使用数据库的语言与数据库通信。
下面表示使用已创建的对象模型的典型步骤。
1.创建查询以从数据库检索信息。
2. 替代插入、更新和删除的默认行为。
此步骤是可选的。 有关详细信息,请参阅 自定义插入、更新和删除操作。
3.设置适当的选项以检测和报告并发冲突。
可以将模型保留为处理并发冲突的默认值,也可以将其更改为适合自己的目的。 有关详细信息,请参阅 操作指南:指定哪些成员进行并发冲突测试 和 操作指南:指定何时抛出并发异常。
4.建立继承层次结构。
此步骤是可选的。 有关详细信息,请参阅 继承支持。
5.提供适当的用户界面。
此步骤是可选的,取决于应用程序的使用方式。
6.调试和测试应用程序。
有关详细信息,请参阅 调试支持。