.AsNoTracking()
                  
                  
                                   .Where(x => x.IsActive)
                  
                  
                                   .ToListAsync();
                  
                  
                  
                  
                  
                  2) var request = await _ctx.Users              
                  
                  
                                   .Where(x => x.IsActive)
                  
                  
                                   .AsNoTracking()
                  
                  
                                   .ToListAsync();
                  
                  
                  
                  
                  
                  Какой вариант правильный?
                  
                  
                
Если правильно помню - они одинаковые, но я бы для читаемости предпочёл первый
А если там будет много Include?
Вроде это влияет на запрос целиком
В первом случае у тебя потащатся из базы вообще все юзеры и будут фильтроваться в коде, что не есть хорошо, лучше фильтрануть все что можно ещё в sql
.AsNoTracking() тоже IQueryable...
Чего? Вы хоть использовали AsNoTracking?
Хм, да, я чет был уверен, что он материализует запрос. Разницы нет никакой где его вставлять https://stackoverflow.com/a/35553844/11565032
Обсуждают сегодня