Tôi đang cố tạo một cơ sở dữ liệu SQLite được nhúng với EF, tuy nhiên, tôi không thể làm việc đó, tệp cơ sở dữ liệu không bao giờ được tạo ra.HOWTO: SQLite với EntityFramework và Code-First
Tôi có EF 4.2 và phiên bản mới nhất SQLite
Dưới đây là những gì tôi có
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 initializer (để đưa một số nội dung trong)
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; }
}
Và cuối cùng trong chính()
Database.SetInitializer(new PageDbInitializer());
Tôi tin rằng tôi có một số bước mất tích, nhưng không thể tìm thấy chúng ra.
Chỉ vì tò mò, bạn đã làm gì? bạn đã sử dụng nhà cung cấp devart hay tìm một giải pháp khác? –
@StellaMusik Tôi đã kết thúc bằng cách sử dụng SQLExpress trong thời gian này, nhưng bạn luôn có thể sử dụng mô hình hoặc cơ sở dữ liệu đầu tiên với SQLlite –
@PierlucSS phải đối mặt với cùng một vấn đề. Tôi không muốn sử dụng Devart vì vậy rõ ràng nó sẽ là model đầu tiên –