快速演練:
- 創建一個實體數據模型(的.edmx)在Visual Studio中,並清除EDMX文件,以防止代碼的 「自定義工具」 屬性代
- 在您的實體數據模型中創建與您的域類相同名稱的實體。實體屬性也應該有相同的名稱和類型,在域類
- 創建一個從
ObjectContext
繼承一個類來暴露實體(通常在同一項目中的.edmx文件)
- 在這一類中,創建一個
public class SalesContext : ObjectContext
{
public SalesContext(string connectionString, string defaultContainerName)
: base(connectionString, defaultContainerName)
{
this.Customers = CreateObjectSet<Customer>();
this.Products = CreateObjectSet<Product>();
this.Orders = CreateObjectSet<Order>();
this.OrderDetails = CreateObjectSet<OrderDetail>();
}
public ObjectSet<Customer> Customers { get; private set; }
public ObjectSet<Product> Products { get; private set; }
public ObjectSet<Order> Orders { get; private set; }
public ObjectSet<OrderDetail> OrderDetails { get; private set; }
}
這就是它...
:爲每個實體
示例代碼的ObjectSet<TEntity>
類型的財產
重要提示:,如果您使用更改跟蹤(ContextOptions.ProxyCreationEnabled
,其默認爲true)自動代理的創建,您的域類的特性必須是虛擬。這是必要的,因爲EF 4.0生成的代理將覆蓋它們以實現更改跟蹤。
如果您不想使用自動代理創建,則需要自己處理更改跟蹤。詳情請見this MSDN page
謝謝,我現在明白了。花了一段時間才能通過T4模板生成。 – ace 2010-06-10 04:32:31