2016-04-15 24 views
1

我在實體框架上使用DBContext,使用像in this tutorial這樣的過程來創建數據庫。在SQLite中爲實體框架設置日記模式核心代碼優先

public class BloggingContext : DbContext 
{ 
    public DbSet<Blog> Blogs { get; set; } 

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) 
    { 
     optionsBuilder.UseSqlite("Filename=blog.db"); 
    } 
} 

,並使用類似節省:

using (var context = new BloggingContext()) 
{ 
    context.Add(blog); 
    await context.SaveChangesAsync(); 
} 

我怎麼會去的雜誌模式設定成類似WAL?

回答

2

SQLite的提供商EF7只支持一小部分關閉連接字符串選項,因此,你需要手動執行某些命令:

var context = new BloggingContext(); 
var connection = context.Database.GetDbConnection(); 
connection.Open(); 
using (var command = connection.CreateCommand()) 
{ 
    command.Text= "PRAGMA journal_mode=WAL;"; 
    command.ExecuteNonQuery(); 
} 

你可以包裹在你的構造或者工場。

相關postother one