我試圖用EF創建一個嵌入式SQLite數據庫,但是我無法讓它工作,數據庫文件永遠不會被創建。HOWTO:具有EntityFramework和Code-First的SQLite
我有EF 4.2和最新版本的SQLite
這裏是我有什麼
的app.config
<?xml version="1.0"?>
<configuration>
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SQLite"/>
<add name="SQLite Data Provider"
invariant="System.Data.SQLite"
description=".Net Framework Data Provider for SQLite"
type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite"/>
</DbProviderFactories>
</system.data>
<connectionStrings>
<add name="DataContext"
connectionString="Data Source=test.db;Version=3;New=True;"
providerName="System.Data.SQLite" />
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" />
</startup>
</configuration>
DB初始化(把一些內容)
class PageDbInitializer : DropCreateDatabaseAlways<PageDB>
{
protected override void Seed(PageDB context)
{
for (int i = 0; i < 10; i++)
{
WebPage page = new WebPage() { Name = "Page" + (i + 1) };
context.Pages.Add(page);
}
base.Seed(context);
}
}
周的DbContext:
class PageDB : DbContext
{
public DbSet<WebPage> Pages { get; set; }
}
最後在main()
Database.SetInitializer(new PageDbInitializer());
我相信我有一些步驟失蹤,卻找不到他們。
出於好奇,你最終做了什麼?您是否使用devart供應商或尋找其他解決方案? –
@StellaMusik我最終結束了使用SQLExpress,但您始終可以使用SQLlite –
@PierlucSS首先使用模型或數據庫面臨同樣的問題。我不想使用Devart的顯然它將成爲模型第一 –