Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
2 / 2 / 0
Регистрация: 08.03.2014
Сообщений: 46
1

Identity + Entity Framework не инициализируются поля

07.11.2018, 21:44. Показов 1275. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер. Использую Identity в связке с Entity Framework, code first.
Имеются 2 сущности: VideoMaterial и Picture.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class VideoMaterial
{
     public int ID { get; set; }
     public List<Picture> Pictures { get; set; }
     //Другие свойства
}
 
public class Picture
{
     public int ID { get; set; }
     public int? VideoMaterialID { get; set; }
     public VideoMaterial VideoMaterial { get; set; }
     //Другие свойства
}
При помощи следующего кода созданы 2 соответствующие таблицы в базе, со связью один-ко-многим, в таблице VideoMaterials добавилась одна запись с ID = 1, в таблице Pictures - 3 записи, все с внешним ключом, ссылающимся на запись из таблицы VideoMaterials.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
     public DbSet<VideoMaterial> VideoMaterials { get; set; }
     public DbSet<Picture> Pictures { get; set; }
}
 
public class AppDbInitializer: DropCreateDatabaseAlways<ApplicationDbContext>
{
      protected override void Seed(ApplicationDbContext context)
      {
          context.VideoMaterials.Add(new VideoMaterial 
          {
               Pictures = new List<Picture>
               {
                    new Picture {/*Инициализация свойств, кроме свойств VideoMaterial, VideoMaterialID*/},
                    new Picture {/*Инициализация свойств, кроме свойств VideoMaterial, VideoMaterialID*/},
                    new Picture {/*Инициализация свойств, кроме свойств VideoMaterial, VideoMaterialID*/}
               }
          });
          context.SaveChanges();
      }
}
Но при обращении к объекту сущности VideoMaterial, его свойство Pictures = null. Тоже самое происходит и с другими связями один-ко-многим и многие-ко-многим в других сущностях. У объектов сущности Picture свойство VideoMaterial = null, но VideoMaterialID = 1. Почему так?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.11.2018, 21:44
Ответы с готовыми решениями:

Связь 1-1 entity framework
Преподаватель предоставил вот такую схему: Я создал классы таблиц, но вот как их связать один к...

MVC + Entity Framework
Подскажите плз ORM, а возможно и СУБД для более комфортной работы. Планируется написание проекта...

Entity FrameWork for VS 2015
У меня есть библиотека классов. И их функционал нужно перенести в таблицы в microsoft sql. Я слышал...

Проблемка с Entity Framework
Здравствуйте, проблема такого плана - пока файл с .edmx расширением создается в рамках веб-сайта...

2
2735 / 2041 / 380
Регистрация: 22.07.2011
Сообщений: 7,731
07.11.2018, 22:53 2
Лучший ответ Сообщение было отмечено Rainy как решение

Решение

Цитата Сообщение от Rainy Посмотреть сообщение
public List<Picture> Pictures { get; set; }
virtual модификатор добавьте.
1
2 / 2 / 0
Регистрация: 08.03.2014
Сообщений: 46
08.11.2018, 19:29  [ТС] 3
Спасибо, помогло.
0
08.11.2018, 19:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.11.2018, 19:29
Помогаю со студенческими работами здесь

Добавление в Entity Framework
Гуглил, но не особо понял , что нужно , чтобы пофиксить это Выборка нормально, а если добавлять и...

Entity Framework автоматическая миграция
Добрый день! В своём проекте использую EF Code First. Изначально всё было настроено и несколько...

Entity Framework многие-ко-многим
Добрый день! Прошу прощения, если создал тему не в том разделе. Ситуация такая: Использую EF...

Модель отдельно от Entity Framework
Припустим, есть сгенеррированая Entity Framework Как можно сделать модель к Entity Framework,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru