6

私は Entity Framework で DBContext を使用しており、このチュートリアルのようなプロセスを使用して DB を作成しています。

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 のようなものに設定するにはどうすればよいですか?

4

1 に答える 1

5

EF7 の Sqlite プロバイダーは、接続文字列オプションから小さなサブセットのみをサポートするため、いくつかのコマンドを手動で実行する必要があります。

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

それをコンストラクターまたはファクトリーでラップできます。

関連する投稿他の投稿.

于 2016-04-15T01:54:52.910 に答える