Повреждено исключение sqlite в xamarin.ios
У меня возникают постоянные сбои в ios при попытке доступа к базе данных sqlite. Мое приложение имеет фоновый процесс синхронизации, где оно пытается извлечь данные и сохранить их в базе данных SQL на устройстве. Кое-как в устройстве IOS случайно происходит сбой.
один из журналов:
SQLite.SQLiteException: поврежден
SQLiteCommand.ExecuteNonQuery () /Users/vagrant/git/src/SQLite.cs:2334 SQLiteConnection.Execute (запрос System.String, System.Object[] args) /Users/vagrant/git/src/SQLite.cs:673 DataAccessBase.TruncateData (System.Boolean isSyncRestarted) / Пользователи / yagnaios / Документы / Документы - MacBook Pro от Venu /Dev_Latest/TCRMobile/TCRMobile/DataAccess/DataAccessBase.cs:93 Главная +d__16.MoveNext () / Пользователи / Yagnaios / Документы / Документы - MacBook Pro от Venu /Dev_Latest/TCRMobile/TCRMobile/Pages/Home.cs:307 ExceptionDispatchInfo.Throw () /Library/Frameworks/Xamarin.iOS.framework/Versions/11.6.1.3/src/mono/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:152
Приложение прекрасно работает в Android, но это серьезная проблема в IOS, потому что, как только база данных повреждена, мы не можем использовать приложение.
1 ответ
Вам необходимо настроить базу данных для сериализации ее доступа к файлу. Убедитесь, что вы избегаете потоков / задач в вашем коде, или убедитесь, что только один поток одновременно пытается записать в базу данных.
Для получения дополнительной информации вы можете получить доступ здесь