0
我是EF Code First的新手。如何使用SQL Server CE 4.0實現IDatabaseInitializer
我創建了一個DbContext
的子類並添加了一些DbSets
。
我做了子類的DropCreateDatabaseAlways<MyContext>
和實施的背景下,這裏就是我的背景是這樣的:
public class Context : DbContext
{
public Context() : base("Database") { }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
Database.DefaultConnectionFactory.CreateConnection("System.Data.SqlServerCe.4.0");
Database.SetInitializer(new DatabaseInitializer());
}
public DbSet<NameEntity> Names { get; set; }
public DbSet<Case> Cases { get; set; }
}
我運行以下命令,檢查應用程序文件後,我沒有看到一個生成的數據庫:
public App() //App ctor
{
using (Models.Context context = new Models.Context())
{
}
}
我錯過了什麼?
用於SQL Server CE 4.0僅s的'.sdf'文件一旦你實際**儲存了**東西在裏面的時候會出現...... – 2012-01-18 08:09:27
當你用上下文進行操作,訪問DbSet或進行一些插入/更新時,數據庫被創建和初始化。你有嘗試過這些嗎? – archil 2012-01-18 08:10:52
我在DatabaseInitializer.Seed中做過,但從未調用過 – Shimmy 2012-01-18 08:14:56