Версия SQLite.Net, позволяющая установить page_size на Xamarin?

Смотря или какой-то совет здесь.

Мой проект Xamarin Forms PCL использует SQLite.Net-PCL, SQLite.Net.Async-PCL, SQLiteNetExtensions и SQLiteNetExtensions.Async - все это NuGets.

Вызывает разочарование тот факт, что SQLite.Net-PCL не позволяет изменять размер_страницы по сравнению со значением по умолчанию, равным 4096 байтам, и в настоящее время нет планов по его исправлению. ( https://github.com/oysteinkrog/SQLite.Net-PCL/issues/128)

Это недопустимо выбрасывает размер моей базы данных; Мне нужно 512 байт, что сделает базу данных примерно в восемь раз меньше. Поэтому я хочу использовать другую версию SQLite-Net (для Xamarin iOS/Android), которая позволяет устанавливать page_size.

  1. Какую версию SQLite-Net будет лучше всего использовать, учитывая, что я привержен SQLiteNetExtensions?

  2. Будет ли лучше включить источники SQLite в мой проект?

  3. Будут ли SQLiteNetExtensions и SQLiteNetExtensions.Async NuGets по-прежнему работать с этой версией SQLite, или мне нужно будет включить источники для них? (TwinCoders рекомендует использовать NuGets для SQLite.Net.)

Конечно, буду признателен за любые советы.

1 ответ

Чтобы изменить размер страницы, обходной путь будет следующим.

  1. В iTunes экспортируйте базу данных на ноутбук.
  2. На ноутбуке откройте базу данных в плагине SQLite Manager для Firefox.
  3. В диспетчере SQLite на вкладке "Настройки БД" измените размер страницы на нужное значение.
  4. Добавьте обновленную базу данных в свой проект Xamarin, установив для Build Action значение "Content".
  5. Добавьте временный код запуска, чтобы скопировать эту базу данных в папку библиотеки или там, где это необходимо.

Не пробовал это, но, похоже, это должно работать.

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