DLINQ

DLINQ可以访问DataSet,这种情况我们在本文就不考虑了,

本文考虑的是直接用DLINQ访问数据库,我们如果用VS Orcas中的LINQ到SQL的新ORM设计器,VS替我们产生了一些代码,这种情况也不是本文考虑的范围。

本文我们要考虑的事情是:如何自己编码去链接数据库,这样我们才能对DLINQ链接数据库有更深入的了解。

下面是一个简单的DLINQ代码:获得 pubs 数据库 authors 表的所有作者的 au_id 信息。

using  System;
using  System.Linq;
using  System.Data.Linq;   //  这个命名空间在单独的组件 System.Data.Linq.dll 中

public   class  DLinqTest
{
    
public static void DoSomeThing()
    
{
        
// 链接字符串       
        string connectionString = “Data Source=192.168.5.2;Initial Catalog=pubs;Persist Security Info=True;User ID=sa;Password=******”;

        
// 我们就是通过使用 DataContext  来 DLINQ链接数据库的。
        DataContext db = new DataContext(connectionString);
        Table
<Authors> authors = db.GetTable<Authors>();
        var users 
= from a in authors orderby a.au_id select a;
        
foreach (var a in users)
        
{
            Console.WriteLine(a.au_id);
        }

    }

}


//  数据库中的表结构影射的实体对象,注意其中的 Attribute.

[Table(Name 
=  “authors”)]
public   class  Authors
{
    [Column(IsPrimaryKey 
= true)]
    
public string au_id getset; }
    [Column]
    
public string au_lname getset; }
    [Column]
    
public string au_fname getset; }
    [Column]
    
public string phone getset; }
    [Column]
    
public string city getset; }
    [Column]
    
public string state getset; }
    [Column]
    
public string zip getset; }
    [Column]
    
public bool contract getset; }
}


DLINQ 链接到数据库的步骤:

1 、创建数据表跟实体对应的实体类(字段和元素可以不一一对应),并把这个类标上Table 特性,根数据表字段有关的元素标上Column特性;

2 、使用 DataContext 和数据库链接字符串建立跟数据库的链接,然后使用 DataContext  的实例的 GetTable 方法获得对应表影射的实体类。

你可能感兴趣的:(LINQ)