Вопрос для начинающих по связям с C# Entity FrameworkC#

Место общения программистов C#
Anonymous
Вопрос для начинающих по связям с C# Entity Framework

Сообщение Anonymous »


Я новичок в Entity Framework и пытаюсь разобраться в нем. Я работаю со следующим:

Тип базы данных: SQLite

2 таблицы, созданные с помощью

СОЗДАТЬ ТАБЛИЦУ Учетных записей ( Идентификатор аккаунта: STRING, Отображаемое имя STRING, ПЕРВИЧНЫЙ КЛЮЧ (AccountId) ) СОЗДАТЬ ТАБЛИЦУ Отзывы ( Автор STRING, Создано: STRING, Идентификатор ЦЕЛОЕ ЧИСЛО, ПЕРВИЧНЫЙ КЛЮЧ(Идентификатор) ) Сущности в C#:

[PrimaryKey(nameof(AccountId))] класс AccountEntry { общедоступная строка? AccountId {получить; набор; } общедоступная строка? DisplayName {получить; набор; } } и

[PrimaryKey(nameof(Id))] Обзор классаЗапись { общедоступная строка? Автор {получить; набор; } общедоступная строка? CreatedOn {получить; набор; } общественный ИНТ Id {получить; набор; } вход в публичный аккаунт? AuthorAccount {получить; набор; } } Моя цель — заполнить поле AuthorAccount объектом AccountEntry, полученным в результате поиска, который использует идентификатор из поля Author для поиска в таблице «Счета».

С этой целью я перегрузил OnModelCreating следующим образом:

защищенное переопределение void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity() .HasOne(e => e.AuthorAccount) .С одним() .HasForeignKey(e => e.Author); } Доступ к DbSet из моего класса, производного от DbContext, не вызывает исключения, но свойство AuthorAccount в полученном Наборы данных ReviewEntry всегда имеют значение null, и я не могу понять, почему (ReviewEntry.Account содержит действительный идентификатор учетной записи, доступный в Таблица счетов).

Вернуться в «C#»