MAUI: база данных SQLITE "удален" после закрытия приложения в режиме выпускаC#

Место общения программистов C#
Ответить
Anonymous
 MAUI: база данных SQLITE "удален" после закрытия приложения в режиме выпуска

Сообщение Anonymous »

Почему файл базы данных SQLite удаляется, когда приложение режима режима закрывается? Режим отладки работает нормально, и база данных сохраняется правильно. Глядя на это, кажется, в этом нет необходимости. Я очень потерян по этому вопросу! 1.8.116 < /li>
Целевые платформы: Android API 34, iOS 17+< /li>
< /ul>
Что работает: < /p>

База данных (CRUD) Работайте отлично во время сеанса приложения < /li>
Разрешения на файлы являются правильными (проверяется с помощью файла Explorer на Android) < /li>
Файл базы данных существует и имеет ожидаемый размер (~ 140 КБ с данными) < /li>
< /ul>
. повторное открытие, файл базы данных исчез < /li>
Сообщения об ошибках или исключения < /li>
каталог все еще не существует, но файл .db3 удален. Закройте с ним-если вы не можете открыть его? 1.9.172 < /li>
< /ul>
githuh минимальный репродукция repo < /p>

Код проекта: < /p>

Код: Выделить всё

public static async Task InitializeAsync()
{
if (_connection != null) return;

await _semaphore.WaitAsync();

try
{
if (_connection != null)
return; // Double-check after acquiring lock

string dbPath = Path.Combine(FileSystem.AppDataDirectory, "BetterSQLite.db3");

//// Delete the database file if it exists (uncomment to enable)
//if (File.Exists(dbPath))
//    File.Delete(dbPath);

_connection = new SQLiteAsyncConnection(dbPath);

// Create the tables if they don't exist
await _connection.CreateTablesAsync();

_logger?.LogInformation("SQLite database initialized successfully at {DbPath}", dbPath);
}
catch (Exception ex)
{
_logger?.LogError(ex, "Failed to initialize SQLite database");
throw new InvalidOperationException("Failed to initialize database", ex);
}
finally
{
_semaphore.Release();
}
}
Android Studio File View:


Подробнее здесь: https://stackoverflow.com/questions/797 ... lease-mode
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»