2011-03-15 50 views
1

我已經看了微軟的兩個MVC教程。在一篇教程中,他們正在創建一個.edmx文件來處理實體框架以執行Linq查詢。在另一個教程他們做了一個名爲「MusicStoreEntities.cs」這裏類代碼:.edmx文件和創建Entities.cs文件之間的區別

using System.Data.Entity; 

namespace MvcMusicStore.Models 
{ 
    public class MusicStoreEntities : DbContext 
    { 
     public DbSet<Album>  Albums { get; set; } 
     public DbSet<Genre>  Genres { get; set; } 
     public DbSet<Artist> Artists { get; set; } 
     public DbSet<Cart>  Carts { get; set; } 
     public DbSet<Order>  Orders { get; set; } 
     public DbSet<OrderDetail> OrderDetails { get; set; } 
    } 
} 

而且教程創建這個類的一個實例,並開始做LINQ查詢以及。這兩種方法有什麼區別?以及如何在.edmx文件中創建DbSet對象?謝謝。

+1

查看[此帖子](http://msdn.microsoft.com/zh-cn/data/ff830362)關於Model-First的實體框架4。 – 2011-03-15 00:57:23

回答

3

創建模型結構有多種方法。

  1. 您可以先編碼POCO類,然後手動創建數據庫。
  2. 您可以先編碼POCO類,然後使用代碼優先庫自動創建數據庫。
  3. 您可以創建數據庫模式,並將其導入類圖(將提供所有模型和導航)。
  4. 你可以創建你的類圖,並從中創建你的數據庫模式。

1和2只創建cs,而3和4創建edmx。

您可以檢查this Code First EF(這包括您問題的DbSet部分)。

編輯:你甚至可以使用POCO類與現有的數據庫,發佈here