Я разрабатываю приложение для Магазина Windows (С#) с использованием базы данных SQLite.
Проблема
Если у меня есть специальные символы в строке, такие как «qwerôty», когда мое приложение извлекает это значение, строковый объект содержит «qwerty» (без этого специального символа).
Создание базы данных
Я создаю свою базу данных с помощью утилиты sqlite3, затем пишу все свои запросы (создание таблицы, вставка в...) в файл (в кодировке UTF-8) и копирую и вставляю все запросы в команду подсказка sqlite3.
Когда я делаю выбор * из таблицы, я вижу "qwerôty", но однажды в моем приложении строка не содержит "ô".
Код в приложении
Вот как я извлекаю свои данные из базы данных SQLite:
private SQLiteAsyncConnection conn = new SQLiteAsyncConnection(DbPath);
return await conn.Table<BusinessObject>().ToListAsync();
Строковое свойство находится в объекте BusinessObject.
Мое предположение
Я думаю, что файл sqlite, который я создаю с помощью sqlite3, не закодирован в UTF-8. Когда я открываю его с помощью встроенного блокнота Windows и делаю «сохранить как», выбранная кодировка — ANSI. Но я не могу найти, как создать базу данных в кодировке UTF-8.
Если у вас есть какие-либо идеи о моей проблеме, заранее спасибо.
Рафи