【发布时间】:2018-08-26 19:10:02
【问题描述】:
我有一个看起来像这样的实体(为简洁起见,部分删除,它包含许多其他属性):
public class Tender
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public string CreatorId { get; set; }
[ForeignKey("CreatorId")]
public virtual AppUser Creator { get; set; }
public ICollection<TenderCircle> TenderCircles { get; set; } = new List<TenderCircle>();
}
TenderCircles 属性用于提供与另一个名为 Circle 的实体的多对多关系。 TenderCircle 实体如下所示:
public class TenderCircle
{
public int TenderId { get; set; }
[ForeignKey("TenderId")]
public Tender Tender { get; set; }
public int CircleId { get; set; }
[ForeignKey("CircleId")]
public Circle Circle { get; set; }
}
现在,我正在执行以下查询(为简洁起见,部分删除,通常它包括许多其他 Include 和 ThenInclude 语句):
return _context.Tenders
.Include(t => t.Creator)
.Include(t => t.TenderCircles.Select(tc => new { CirlceId = tc.CircleId, TenderId = tc.TenderId }))
.ToList();
但是,它根本不起作用。我想要实现的是我只想从TenderCircle 中获取TenderId 和CircleId 属性,而忽略实际的Tender 和Circle 对象。知道如何在 EF Core 中实现这一点吗?
【问题讨论】:
-
您的项目的 .NET Core 版本是什么?
标签: entity-framework asp.net-core entity-framework-core