Entity Framework Core Interview Question #130

How can indexes affect EF Core query performance?

Performance, Raw SQL, Stored Procedures & Advanced Queries Senior Advanced

Quick Interview Answer

EF Core generates SQL, but the database optimizer determines how it is executed. Appropriate indexes can reduce work for filters, joins, uniqueness checks, and ordering. Indexes should reflect real query patterns because excessive indexes consume storage and make writes more expensive. Use execution plans and workload evidence to guide index design.

Detailed Explanation

EF Core generates SQL, but the database optimizer determines how it is executed. Appropriate indexes can reduce work for filters, joins, uniqueness checks, and ordering. Indexes should reflect real query patterns because excessive indexes consume storage and make writes more expensive. Use execution plans and workload evidence to guide index design.

Code Example

modelBuilder.Entity<Order>()
    .HasIndex(o => new { o.CustomerId, o.CreatedAtUtc });