技术开发 频道

步步学LINQ to SQL:将类映射到数据库表

  (3)申明数据表

  最后,你可以为每张数据表创建一个类型为Table的对象类集合。

  通常,你可以先创建这些类,下面我们来看看这一创建过程。我们将创建三个类(Author, Book, 和Category)--每个类对应一张数据表。因此,我们将为每个类类型添加一个Table集合并将这些集合命名为一个有意义的名字。注意,为数据库表名对应的类或集合命名不是必须的。我们将在下一节了解如何为数据表指定名称。

  using System.Data.Linq;

  
using System.Data.Linq.Mapping;

  
namespace LINQDemo

  {

  [Database]

  
public class BookCatalog : DataContext

  {

  
public BookCatalog( ) : base( ... );

  
public Table Authors;

  
public Table Books;

  
public Table Categories;

  }

  }

   2.将实体类映射到数据库表

  为连接到应用程序的每张数据库表创建类对象。我们将以Book表为例子阐述这一实现过程。

  (1)创建带有[Table]特性的类

  创建一个特性为Table的Book类将其映射到对应的数据库表。

  为数据库表的Name参数指定名称([Table( Name = "Books" )])。这里我们这样做是因为表的名称(Books)和我们的类名(Book)不同。如果它们相同,可以忽略该Name参数的设置。

  using System.Data.Linq.Mapping;

  
namespace LINQDemo

  {

  [Table( Name
= "Books" )]

  
public class Book{}

  }

   (2)使用[Column( IsPrimaryKey = true )]特性添加一个字段作为表的主键。

  如果你喜欢,你也可以为为其添加一个Column特性,这也是Book Catalog应用程序所采用的方式。

  如果你的主键在数据库中设置成了Identity,那么需要添加一个参数IsDbGenerated = true。

0
相关文章