2010-12-06 66 views
0

我正在鑽研EntityFramework 4代碼的第一個實體方法,並且我被卡在如何取出ObjectContext/Entities並將它們鏈接到數據庫上。先用EntityFramework連接到數據庫的代碼4

我已經看過[msdn] [1]和[blogs] [2]上有關如何使用所有這些的varous網站,但他們都沒有談論如何創建一個數據庫,實體將被保存在或者不要把代碼先評價一下。我知道我可以創建一個edmx文件並從中生成sql,但由於我正在編寫我的實體,因此首先此文件是空的,並且通過設計人員,我沒有看到添加實體而無需重複工作的方式(創建所有實體/領域等)。

在完整的實體框架版本中似乎沒有EntityConfiguration類。它似乎只在CTP中,我沒有使用(很多Web上的例子使用CTP)。

另外,下面的上下文需要的字符串似乎與edmx或數據庫沒有任何關係。

public class EntityContext : ObjectContext 
{ 
    public EntityContext() 
     : base("name=ExampleEntities", "ExampleEntities") 
    { 
     ContextOptions.LazyLoadingEnabled = true; 

     Users = CreateObjectSet<User>(); 
    } 

    public IObjectSet<User> Users { get; set; } 
} 

所以問題是。

  1. 如何創建映射到我的實體的數據庫模式?
  2. 我應該使用edmx文件還是創建自己的數據庫文件(.mdf)?
  3. 如果我確實使用edmx文件,我該如何輕鬆添加我的代碼第一個實體?
  4. ObjectContext中的ObjectSet如何映射到數據庫?

感謝

編輯 我使用VS2010專業,隨之而來的類。我看到CTP4出來了,所以我認爲RTM版本還沒有出來。它是否正確?

回答

0

添加到您的Application_Start事件來創建數據庫:

Database.SetInitializer<YourObjectContextClass>(new RecreateDatabaseIfModelChanges<YourObjectContextClass>()); 
+0

重新創建哪些數據庫。就我所見,我的ObjectContext和DB之間沒有任何關聯。我應該在對象上下文中有一個正確的連接字符串。另外什麼彙編`數據庫`和`RecreateDatabaseIfModelChanges`類住在 – aqwert 2010-12-06 23:55:29

相關問題