sqlite-net-pcl не работает в Windows Phone

#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 милсекунд. Очень странно.