System.Data.LinqSystem.Data.Linq.Mapping(需先參考 System.Data.Linq 組件)使用屬性標記將類別對應至資料表,欄位對應至資料行:
[Table(Name="Employees")]
public class Employee
{
[Column(IsDbGenerated=true, IsPrimaryKey=true)]
public int EmployeeID { get; set; }
[Column(Name="FirstName", DbType="varchar(20)")]
public string FirstName { get; set; }
[Column(Name="LastName", DbType="varchar(20)")]
public string LastName { get; set; }
}
| 屬性 | 用途 |
|---|---|
Name | 資料行名稱(若與屬性名不同) |
DbType | 資料庫型別,如 varchar(20) |
IsDbGenerated | 是否為資料庫自動產生(Identity、Computed) |
CanBeNull | 是否允許 NULL |
Storage | 指定儲存欄位值的私有欄位名稱(用於延遲載入優化) |
掌握這些屬性,即可精確控制 LINQ to SQL 的對應行為,進而撰寫型別安全、效能優異的資料存取程式碼。