✅ Ef-core query efficiency?
I have a question regarding querying data. Which one is more efficient since I only need the department ids. The first one
or second one
private async Task<OrganizationMemberDTO?> RetrieveMemberAsync(CancellationToken ct)
{
return await db.OrganizationMembers
.AsNoTracking()
.Where(e => e.Id == MemberId && e.OrganizationId == OrganizationId)
.Select(e => new OrganizationMemberDTO
{
Id = e.Id,
Position = e.Position,
Departments = e.Departments.Select(d => d.DepartmentId)
}).FirstOrDefaultAsync(ct);
} private async Task<OrganizationMemberDTO?> RetrieveMemberAsync(CancellationToken ct)
{
return await db.OrganizationMembers
.AsNoTracking()
.Where(e => e.Id == MemberId && e.OrganizationId == OrganizationId)
.Select(e => new OrganizationMemberDTO
{
Id = e.Id,
Position = e.Position,
Departments = e.Departments.Select(d => d.DepartmentId)
}).FirstOrDefaultAsync(ct);
} private async Task<OrganizationMember?> RetrieveMemberAsync(CancellationToken ct)
{
return await db.OrganizationMembers
.AsNoTracking()
.Include(e => e.Departments)
.FirstOrDefaultAsync(e => e.Id == MemberId && e.OrganizationId == OrganizationId, ct);
} private async Task<OrganizationMember?> RetrieveMemberAsync(CancellationToken ct)
{
return await db.OrganizationMembers
.AsNoTracking()
.Include(e => e.Departments)
.FirstOrDefaultAsync(e => e.Id == MemberId && e.OrganizationId == OrganizationId, ct);
}