技术开发 频道

详解利用LINQ to SQL来访问后台数据库

  【IT168 技术文档】我们将用OpenXML SDK 2.0 for Microsoft Office (August 2009 CTP)来生成一个Word文档。我们要写一段程序来访问后台SQL Server数据库,并把返回的数据包在一个表里插入到一个已有的Word文档中。生成一个控制台程序并连接到后台数据库读取信息

  Create a Console Application and connect to AdventureWorks2008 Database

  在这一步中,我们会:

  • 生成一个控制台程序

  • 生成一个LINQ to SQL类

  • 测试连接后台数据库并读取信息In this task, we will

  • Create a console application

  • Create a LINQ to SQL class in the project

  • Validate the database connection by writing some data out to Console

  1. 打开Visual Studio 2008:开始 | 所有程序 | Microsoft Visual Studio 2008 | Microsoft Visual Studio 2008

  2. 在菜单里,选中文件|新建|项目…

  3. 在新建项目对话框中,展开并选中项目类型中的 Visual C# | Windows,在右边的模板中选中控制台应用程序

  4. 在名称文本框中填入 CreateDocFromDatabase

  5. 在位置文本框中填入c:\HOL\OFCHOL245

  6. 保证单选框创建解决方案的目录 没有选中

  7. 点击确定按钮

  8. 在后面几步里,我们要在项目中加一个Linq to SQL的类,这样我们就可以从数据库中直接提取数据:在解决方案资源管理器中,右击项目CreateDocFromDatabase,在展开的菜单中选择添加 | 新建项

  9. 在添加新项对话框中,在类别框中选中Visua C#项,在右边的模板框中选中LINQ to SQL类,在下面的名称文本框中敲入AdventureWorks.dbml作为类的名称,点击添加按钮

  10. 如果AdventureWorks.dbml的编辑页面没有自动打开,在解决方案资源管理器中双击AdventureWorks.dbml,其编辑页面就会打开;点击其中的链接服务器资源管理器,在VS左边会弹出服务器资源管理器的窗口

  11. 在服务器资源管理器的窗口中,右击数据连接,选中添加连接按钮

  12. 如果选择数据源的对话框出现,在选择数据源的对话框中,选中Microsoft SQL Server,点击继续按钮

  13. 在添加链接的对话框中,在服务器名的下拉表中填入localhost;

  在登录到服务器的区域中,选中单选按钮使用SQL Server身份验证,然后在其下面的用户名文本框中填入sa,在密码文本框中填入pass@word0!;

  在连接到一个数据库的区域中,选中单选按钮选择或输入一个数据库名,然后在其下面的下拉表中填入或选中AdventureWorks

  点击确定按钮

  14. 在服务器资源管理器窗口中,点击树形结构中的+以展开labrownev2009.AdventureWorks.dbo | 表

  15. 在展开的labrownev2009.AdventureWorks.dbo的表中,选中以下四个表:Product, ProductPhoto, ProductProductPhoto, ProductSubcategory;将其拖拉到AdventureWorks.dbml的编辑页面中。如果有警示的对话框出现,点击是即可。(按下键盘Ctrl可同时选中多个表;拖拉的动作可以用按住鼠标右键拖拉来完成)

  在AdventureWorks.dbml的编辑页面中会出现四个表关系图

  16. Ctrl-S来保存当前的项目

  17. 编辑生成项目:在解决方案资源管理器中,右击项目CreateDocFromDatabase,在下拉菜单中选中生成编辑生成应该成功没有错误。

  18. 在解决方案资源管理器中,双击Program.cs 打开其程序编辑窗口.

  19. 将以下的程序加到method: static void Main(string[] args){}.

  AdventureWorksDataContext context = new AdventureWorksDataContext();
  var products
= from p in context.Product select p.Name;
  
foreach (string name in products)
  {
  System.Console.WriteLine(name);
  }
  System.Console.ReadLine();

 

  你的程序应该和下面程序一样

  using System;
  
using System.Collections.Generic;
  
using System.Linq;
  
using System.Text;
  
namespace CreateDocFromDatabase
  {
  
class Program
  {
  
static void Main(string[] args)
  {
  AdventureWorksDataContext context
= new AdventureWorksDataContext();
  var products
= from p in context.Product select p.Name;
  
foreach (string name in products)
  {
  System.Console.WriteLine(name);
  }
  System.Console.ReadLine();
  }
  }
  }

 

  备注:可以加入已经编辑好的代码段。在将要加入代码段的位置,点击鼠标右键,选中插入代码段如下图

  选中后,在代码段表中选中My Code Snippets | TestConnectToDB

  20. 在Visual Studio 2008 中,按F5运行程序,你会看到一个控制台窗口被打开了;在窗口中列出一系列产品名称

  21. 在控制台窗口被选中的时候,按任何一个按键来结束程序运行。

0
相关文章