Получение данных из вторичной таблицы, присоединенной к первичной через первичный ключ в обоих случаях.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Гость
 Получение данных из вторичной таблицы, присоединенной к первичной через первичный ключ в обоих случаях.

Сообщение Гость »


У меня есть веб-сайт ASP.NET Core, который я пытаюсь создать на основе старого сайта веб-форм. В настоящее время существует связь таблиц «один к одному», при которой основная таблица ASPNETUsers присоединяется к таблице POC через один и тот же столбец идентификатора в обеих. Я новичок в ASP.NET Core и Entity Framework и пытаюсь понять, как заставить это работать в моделях и сервисе.

Вот два класса модели:

с использованием System.ComponentModel.DataAnnotations.Schema; пространство имен Core.Models { [Таблица("ASPNetUsers")] общедоступный класс UserViewModel { [System.ComponentModel.DataAnnotations.Key] публичный идентификатор строки {get; набор; } общественная строка Имя пользователя {получить; набор; } общедоступная строка Электронная почта {get; набор; } общедоступная строка? Имя {получить; набор; } общедоступная строка? Фамилия {получить; набор; } общедоступная строка? MobilePIN {получить; набор; } общедоступная строка? PhoneNumber {получить; набор; } общедоступная строка? PhoneExt {получить; набор; } общественный POC? POC {получить; набор; } } } и

с использованием System.ComponentModel.DataAnnotations; использование System.ComponentModel.DataAnnotations.Schema; пространство имен TRRWSCore.Models { [Таблица("POC")] POC общественного класса { [Ключ] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] публичный идентификатор строки {get; набор; } общедоступная строка? Идентификатор пользователя {получить; набор; } [ForeignKey("Идентификатор пользователя")] общедоступная виртуальная модель UserViewModel? Пользователь {получить; набор; } общедоступная строка? POCAddress1 {получить; набор; } общедоступная строка? POCAddress2 {получить; набор; } общедоступная строка? POCCity {получить; набор; } общедоступная строка? POCState {получить; набор; } общедоступная строка? POCZip {получить; набор; } общедоступная строка? POCTitle {получить; набор; } общедоступная строка? POCFax {получить; набор; } публичный логический тип? ThirdPartyConsultant {получить; набор; } } } В моем сервисе есть следующий код:

UserViewModel = ожидание _context.UserInfoDbSet .Include(p => p.POC.Id == id) .Where(a => a.Id == id) .FirstOrDefaultAsync(); UserInfoDbSet — это DbSet, зарегистрированный в классе модели UserViewModel. Я тоже только что попробовал

UserViewModel = ожидание _context.UserInfoDbSet .Include(p => p.POC) .Where(a => a.Id == id) .FirstOrDefaultAsync(); но оба возвращают ноль. Когда я удаляю предложение .Include, оно действительно генерирует результат, но не включает связанные данные POC, а только данные в UserViewModel.

Как я могу включить эти данные в общие результаты?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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