我有一个ticket
实体,它有ticketNotes
(0个到多个),我想在查询tickets时返回每个注释的创建者用户详细信息。
我使用以下代码查询ticket:
var ticket = (from t in context.Tickets
.Include(t=>t.Site)
.Include(t=>t.Caller)
.Include(t=>t.Caller.Site)
.Include(t => t.Notes)
.Include(t=>t.OpenedByUser)
select t).First(t => t.TicketId == ticketId);
我的TicketNote
类如下:
public class TicketNote
{
public Guid TicketNoteId { get; set; }
public string NoteText { get; set; }
public DateTime CreatedTime { get; set; }
public Guid TicketId { get; set; }
public virtual Ticket Ticket { get; set; }
public bool ReadOnly { get; set; }
public DateTime? DateTimeDeleted { get; set; }
public Guid TenantId { get; set; }
[Required]
[DefaultValue(typeof(Guid), "00000000-0000-0000-0000-000000000000")]
public Guid CreatedByUserId { get; set; }
[ForeignKey("CreatedByUserId")]
public virtual User CreatedByUser { get; set; }
}
我想添加
.Include(t => t.Notes.CreatedByUser)
但是由于 notes 是一个集合,所以我没有得到这个选项。
请建议实现拉回目前为 NULL 的 CreatedByUser 的最佳方法。
谢谢。
Any()
在这里是否适用 -.Include(t => t.Notes.Any().CreatedByUser)
? - Kami