0
asp.net core 2.0 및 EF core 2.0을 사용하고 있습니다.EF Core 2.0 관계 (Null Comig)
나는 DbSet에 대해 3 개의 클래스가 있습니다.
public class Person
{
[Key]
public int PersonId { get; set; }
public string Name { get; set; }
}
public class Packet
{
[Key]
public int PacketId { get; set; }
public string Name{get;set;}
public int Point{get;set;}
}
public class UserPacket
{
[Key]
public int UserPacketId { get; set; }
public int ParentPersonId { get; set; }
public Person Parent { get; set; }
public int PacketId { get; set; }
public Packet Packet { get; set; }
}
그리고
modelBuilder.Entity<UserPacket>().HasOne<Person>(a => a.Parent).WithMany().HasForeignKey(a=>a.ParentPersonId);
modelBuilder.Entity<UserPacket>().HasOne<Person>(a => a.Owner).WithMany().HasForeignKey(a=>a.OwnerPersonId);
modelBuilder.Entity<UserPacket>().HasOne<Packet>(a => a.Packet).WithMany().HasForeignKey(b=>b.PacketId);
이 테이블에 대한 내 디자인 (자세한 내용을 포함하지 않습니다.) VAR 사람 = blabla을 .....입니다
var personPacket = _userPacketRepository.GetMany(a => a.OwnerPersonId == person.PersonId);
double totalPacket = 0;
foreach (var packet in personPacket)
{
totalPacket += packet.Packet.Point;
}
내가 패킷을 선택할 수 있지만, 패킷에 대해. 패킷이 null이됩니다. 아무도 나 도와 줄 수 없어?
시도는 그것을 포함하는 것은 매우 유용하다'_userPacketRepository.GetMany (A = > a.OwnerPersonId == person.PersonId) .Include (x => x.Packet); ' –
@AhmedRagheb 그건 고맙습니다. EF 코어를 위해 미래가 필요한 것일까 요? 왜냐하면 내가 사용하지 않았기 때문에 Include하지만 Property (Asp.net mvc 5 및 EF 6)를 사용할 수 있습니다. –
답변으로 추가 할 것입니다. 다른 사용자가 사용할 수 있도록 확인하십시오. –