Лучший способ предотвратить тайм-аут SQL Server LocalDb (Keep Alive)

Я использую SQL Server 2014 LocalDb с C#. Одна из проблем заключается в том, что если приложение неактивно в течение определенного периода времени, срок действия базы данных истекает, а следующее действие занимает много времени, пока оно повторно инициализирует базу данных. Каков наилучший способ предотвратить такой тайм-аут?

Я получаю доступ к базе данных через Linq для сущностей.

Один из подходов, которые я пробовал, - вызывать эту функцию каждые 60 секунд, но даже по какой-то причине кажется, что она не работает должным образом.

public async static Task<Version> GetVersionInfoAsync() {
    try {
        return await Task.Run(() => {
            using (Entities context = new Entities()) {
                // We must query manually because querying entity objects would fail on outdated databases.
                DbVersion Result = context.Database.SqlQuery<DbVersion>("SELECT Major, Minor, Build, Revision FROM Version").FirstOrDefault();
                //DbVersion Result = context.DbVersions.Single();
                return new Version(Result.Major, Result.Minor, Result.Build, Result.Revision);
            }
        });
    }
    catch (Exception ex) {
        throw ex;
    }
}

0 ответов

Другие вопросы по тегам