Список форм Xamarin Добавить в базу данных SQL - PullRequest
0 голосов
/ 16 марта 2020

У меня проблема. Я создал следующий класс:

public class KnownDevice
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string IP { get; set; }
    public string MAC { get; set; }
    public string Type { get; set; }

    public List<TriangleRegistryObject> triangles { get; set; }
    public List<HexagonRegistryObject> hexagons { get; set; }
}

Теперь я хочу создать базу данных на самом мобильном телефоне, поэтому я использую следующий код для создания таблицы:

database = DependencyService.Get<ISQLite>().GetConnection();
database.CreateTable<KnownDevice>();

Но код вылетает во второй строке с ошибкой:

System.NotSupportedException: «Не знаю о System.Collections.Generi c .List`1

Теперь по inte rnet Я обнаружил, что нельзя добавлять список в базу данных, но мне нужны данные в этом списке, поэтому я понятия не имею, как я могу решить эту проблему. Список может содержать около 25 строк!

Есть идеи, как решить эту проблему?

1 Ответ

0 голосов
/ 16 марта 2020

List<TriangleRegistryObject> не является допустимым типом для значения базы данных SQLite. Ваш тип List<TriangleRegistryObject> не соответствует ни одному из операторов clrType == typeof (XXXX), поэтому вы получите это исключение. Вам нужно будет немного переосмыслить структуру классов, чтобы можно было использовать SQLite- net.

Для получения дополнительной информации о базе данных SQLite вы можете загрузить исходный файл по ссылке для справки. https://docs.microsoft.com/zh-cn/samples/xamarin/xamarin-forms-samples/todo/

Если вы хотите использовать ou, вы можете использовать List, вы можете использовать SQLite- Net Extensions вместо SQLite.

Вы можете обратиться по ссылке. Библиотека SQLite- Net Extensions напрямую указывает на c отношения в базе данных. Как хранить списки объектов в SQLite. net?

...