Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Настройка режима журнала в SQLite для кода Entity Framework Core сначала

Автор вопроса: TyressОтветов: 1

Я использую DBContext в Entity Framework, используя такой процесс, как в этом руководстве для создания БД.

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?

sqliteentity-framework-coresqlite-journal-mode

Ответы

Ответ 1 · рейтинг 5 · Fabien PERRONNET

Поставщик 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();
}

Вы можете обернуть это в свой конструктор или на фабрику.

Похожие сообщения и другой.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы