Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Новый топик    Ответить
 Связанные Entity в EF6  [new]
leonmbs
Member

Откуда: Харьков
Сообщений: 232
есть две таболицы и соответствуюзие Entity
 public partial class User
    {
        public int UserId { get; set; }
        public string Email { get; set; }
        public string Password { get; set; }
        public Nullable<int> RoleID { get; set; }

        public virtual Role Role { get; set; }
    }
   public partial class Role
    {
        public Role()
        {
            Users = new HashSet<User>();
        }

        public int RoleId { get; set; }
        public string RoleName { get; set; }

        public virtual ICollection<User> Users { get; set; }
    }


   public partial class AppDBContext : DbContext
    {
  
        public virtual DbSet<Role> Role  { get; set; }
        public virtual DbSet<User> User  { get; set; }
 }


когда в получаю юзера в стандартном NET то сразу подтягивается и обект Role которые один ко многим

     var u = db.Users.FirstOrDefault();
            var rr = u.Role;


но в COre.NET это свойство равно null

Это какая то разница в реализации EF для платформ или где то надо что то прописать? В стандартном делал дизайнером edfx но в коде разницы особой не вижу в классах для Entity

наверно код подтгивающий Role в о второй части partialol классов - кстати а где они генерятся? Или она на лету и сразу комспилятся?

Кароче есть ли встроенная возможность чтобы подтягивался автоматом кас по вторичному ключу. как в стандартном .NET?
5 июн 19, 15:26    [21902647]     Ответить | Цитировать Сообщить модератору
 Re: Связанные Entity в EF6  [new]
Konst_One
Member

Откуда:
Сообщений: 11551
 var u = db.Users.Include("Roles").FirstOrDefault();
5 июн 19, 15:59    [21902693]     Ответить | Цитировать Сообщить модератору
 Re: Связанные Entity в EF6  [new]
leonmbs
Member

Откуда: Харьков
Сообщений: 232
Konst_One,
не вижу include в core.net
то ли LINQ недопилено до стандартного то ли EF
5 июн 19, 16:07    [21902707]     Ответить | Цитировать Сообщить модератору
 Re: Связанные Entity в EF6  [new]
Konst_One
Member

Откуда:
Сообщений: 11551
https://docs.microsoft.com/ru-ru/ef/core/querying/related-data
5 июн 19, 16:09    [21902708]     Ответить | Цитировать Сообщить модератору
 Re: Связанные Entity в EF6  [new]
leonmbs
Member

Откуда: Харьков
Сообщений: 232
странно
заработало когда добавил Microsoft.AspNetCore явно через Nuget
а шо оно тогда по дефолту втыкает в проект с corenet2.2

Что интересно Include так и не появилось в списке LINQ команд
5 июн 19, 16:48    [21902754]     Ответить | Цитировать Сообщить модератору
 Re: Связанные Entity в EF6  [new]
Shocker.Pro
Member

Откуда: ->|<- :адуктО
Сообщений: 21969
Konst_One
 var u = db.Users.Include("Roles").FirstOrDefault();
не учи плохому
.Include(n => n.Roles)

leonmbs
Что интересно Include так и не появилось в списке LINQ команд
ну так using же добавить надо, это ж метод расширения
5 июн 19, 17:36    [21902805]     Ответить | Цитировать Сообщить модератору
 Re: Связанные Entity в EF6  [new]
hVostt
Member

Откуда:
Сообщений: 18552
Зачастую, использование Include это плохо. Лучше использовать проекции, по крайне мере для чтения.
5 июн 19, 21:39    [21902972]     Ответить | Цитировать Сообщить модератору
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Ответить