Станислав Макаров: Спасибо за развернутый ответ, я понял вашу мысль. У меня нет необходимости в sqlite-net, но наткнулся на пример его использования и решил попробовать решив, что это быстро. Попробую использовать Entity Framework. А можно подробнее про вашу фразу: "вот только winrt сюда не примешивайте, не нужно кидать все подряд)"
Чем отличаются эти две ссылки? Да System.Data.SQLite установлен и работает. Пакет sqlite-net по описанию и примерам упрощает работу с базой и по сути представляет собой ORM, но он использует sqlite3.dll которой нету в пакете System.Data.SQLite. Она есть в расширении для студии SQLite for Windows Runtime. Но она не принимается sqlite-net.
masterL: Пока занимался редактированием записей, забыл про добавление новых, а там творятся еще большие непонятки... В этой строчке: db.Products.Add(product); объект продукт такой как надо для создания нового, Id и CategoryId = 0, а Category содержит ссылку на правильный объект с Id = 2. Но после выполнения db.SaveChanges(); В таблице Category появляется новая запись, и именно на нее начинает ссылаться новый продукт, получается с каждым добавлением нового продукта, создается новая категория...
masterL: Если назвать Category_id то в таблице появляется поле Categoy_Id1. По сути решением проблемы оказалось помимо добавления свойства CategoryId в класс Product, необходимо было в класс Category добавить такое свойство public virtual ICollection Products { get; set; }
Но все же создается ощущение, что написал костыль...
masterL: Пересоздание базы не помогло, в новой таблице Product также оказываются оба поля и Category_Id и CategoryId. Еще заметил странность, при добавление нового объекта Product, в его Category находится уже существующая категория, то после сохранения генерируется новая запись в Category с которой и связывается новый объект Product.
masterL: я добавил свойство CategoryId в класс Product, после миграции в БД в таблице Product соответственно добавилось поле CategoryId, теперь в таблице по сути два поля для связи с категориями и Category_Id и CategoryId, разве это правильно?