Что должен знать Senior .NET-разработчик про AsNoTracking?

C# / .NETГлубокие trade-offs, диагностика, архитектурный контекст и влияние на систему.Entity Framework Core and ORMТеорияcsharpdotnetentity-framework-core-and-ormef-coreasnotracking

Что хотят услышать интервьюеры:

Senior-разработчик должен объяснить AsNoTracking через trade-offs, диагностику, границы применения и влияние на архитектуру. Важно уметь посмотреть сгенерированный SQL и объяснить, где запрос выполняется: в БД или в памяти.

  • Суть: AsNoTracking отключает отслеживание сущностей и ускоряет read-only запросы.
  • Где встречается: доступ к данным, миграции, запросы, транзакции и оптимизация ORM-слоя.
  • Типичная ошибка: получить N+1, использовать tracking для read-only запросов или не смотреть сгенерированный SQL.
  • Как отвечать: начните с короткого определения, затем приведите пример, назовите ограничение и типичную ошибку.
  • Ожидаемый уровень: Senior. Глубокие trade-offs, диагностика, архитектурный контекст и влияние на систему.

Ответ:

var orders = await db.Orders.AsNoTracking().Where(o => o.UserId == userId).ToListAsync();

Источники

Похожие вопросы