Использование расширений SQLite-Net и отношения OneToMany

Мне трудно реализовать пример SQLite-Extensions для Windows Phone 8.1, который имеет отношение OneToMany. Я бы очень хотел использовать эту функцию, но я вырываю волосы, пытаясь заставить ее работать. Как и в этом вопросе, когда я пытаюсь использовать предоставленный пример для таблицы акций со списком оценок:

public class Stock
{
    [PrimaryKey, AutoIncrement]
    public int Id { get; set; }
    [MaxLength(8)]
    public string Symbol { get; set; }

    [OneToMany(CascadeOperations = CascadeOperation.All)]      // One to many relationship with Valuation
    public List<Valuation> Valuations { get; set; }
}

public class Valuation
{
    [PrimaryKey, AutoIncrement]
    public int Id { get; set; }

    [ForeignKey(typeof(Stock))]     // Specify the foreign key
    public int StockId { get; set; }
    public DateTime Time { get; set; }
    public decimal Price { get; set; }

    [ManyToOne]      // Many to one relationship with Stock
    public Stock Stock { get; set; }
}

и я пытаюсь создать таблицу, я получаю сообщение об ошибке:

Исключение типа 'System.NotSupportedException' произошло в app_name.exe, но не было обработано в пользовательском коде Дополнительная информация: Не знаю о> System.Collections.Generic.List`1 [app_name.Model.modelName]

Первоначально я включил ссылку на пакет NuGet на sqlite-net, а также на SQLiteNetExtensions-PCL, но ранее упоминалось, что это связано с неправильной версией sqlite-net.

Однако я попытался загрузить исходный код sqlite-net и создать его локально, и SQLiteNetExtensions напрямую не ссылается на него.

Я включил источник локально в свое решение, и это, похоже, не имеет значения. Есть ли у кого-нибудь дополнительные предложения? Я не встречал ни одного загружаемого примера для этого.


person omnir    schedule 10.11.2014    source источник


Ответы (1)


Если вы добавили ссылку на SQLiteNetExtensions-PCL, вам также НЕ нужно вручную добавлять ссылку на SQLite из VS / Добавить ссылки, поскольку пакет Nuget включает в себя правильную версию.

person Wayne Lee    schedule 15.11.2014
comment
Мне действительно удалось заставить расширения работать. Решение состоит в том, что вам НЕ нужно вручную добавлять ссылку на SQLite из VS / Add References, поскольку пакет Nuget включает в себя правильную версию. - person Wayne Lee; 23.11.2014