LINQ to SQL概述:可以为关系数据库提供一个对象模型,并在该对象模型基础上实现对数据的查询、添加、修改、删除等功能,即LINQ to SQL提供了用于将关系数据作为对象管理的运行时基础结构。
LINQ to SQL对象模型和SQL Server数据库中的对象映射关系
LINQ to SQL对象模型的基本元素 | SQL Server数据库中的对象 |
实体类 | 表 |
属性或字段 | 列 |
关联 | 外键关系 |
方法 | 存储过程或函数 |
1.实体类和数据库表
[Table(Name="UserInfo")] public class UserInfo{...}
2.属性或(字段)和数据库表中的列
如果一个实体类映射到数据库中的表,那么它的属性或字段可以被映射到数据库表中的列。
[Table(Name="UserInfo")] public class UserInfo { private int ID; private string username; [Column(IsPrimaryKey=true)] public int ID { get{return id;} set{id=value;} } public string Username { get{return username;} set{username=value;} } }
3.关联和数据库外键关系
在LINQ to SQL中,LinqDB数据库中的外键关联通过AssociationAttribute属性表示.。
[Table(Name="UserInfo")] public class UserInfo { ... private EntitySet<UserRole>_UserRole; [Assocation(Name="UserInfo_UserRole", Storagr="_UserRole",OtherKey="UserID")] private EntitySet<UserRole>UserRole { get{return _UserRole;} set{_UserRole.Assign(value);} } ... }