#c# #sqlite #xamarin #windows-phone-8.1 #sqlite-net
#c# #sqlite #xamarin #windows-phone-8.1 #sqlite-net
Вопрос:
Я следовал этому руководству https://developer.xamarin.com/guides/xamarin-forms/working-with/databases/#PCL_WinRT , но у меня возникла проблема после запуска приложения на устройстве (на эмуляторе WP 8.1 и платформе Android работает нормально):
Exception thrown: 'System.DllNotFoundException' in
SQLitePCLRaw.provider.e_sqlite3.ni.DLL Exception thrown:
'System.TypeInitializationException' in SQLite-net.ni.DLL
Может мне кто-нибудь помочь?
Ответ №1:
Я был в той же точке, что и вы. Для использования SQLite-Database в WindowsPhone необходимо включить пакет среды выполнения Visual Studio C 2013.
ПРИМЕЧАНИЕ 1. Для Windows 8.1 и Windows Phone 8.1 требуется включить пакет среды выполнения Visual Studio C 2013, чтобы SQLitePCL.raw_basic работал.
ПРИМЕЧАНИЕ 2. Для Windows Phone 8 Silverlight требуется загрузить предварительно скомпилированные двоичные файлы для Windows Phone 8 VSIX и установить в Visual Studio; это позволяет использовать расширение SQLite для Windows Phone, которое затем можно добавить в свое приложение.
Вы можете найти приведенную выше информацию и пример проекта (xamarin-todo-sample) на этой странице github. Это помогло мне решить проблемы
Комментарии:
1. Спасибо за быстрый ответ, но пакет среды выполнения C 2013 включен в мой проект. У меня это не работает: (Я попробовал запустить образец и вижу очень медленный запрос к sqlite на Windows phone, простой запрос вставки — 3289 милесекунд. На Android вставка — 60 милсекунд. Очень странно.