Я заинтересован, как Linq2Sql обрабатывает скомпилированный запрос, который возвращает IQueryable.
Если я вызываю метод расширения на основе скомпилированного запроса, такого как "GetEntitiesCompiled (). Count ()" или "GetEntitiesCompiled (). Take (x)". Что Linq2Sql делает в фоновом режиме? Это было бы очень плохо, поэтому в этой ситуации я должен написать скомпилированный запрос, например "CountEntitiesCompiled".
Загружает ли он результат (в данном случае «GetEntitiesCompiled ()») в память (сопоставленную с классом сущностей, таким как «ToList ()»)?
Итак, какие ситуации имеют смысл, когда скомпилированные запросы возвращают IQueryable, этот запрос не может быть изменен до запроса к Sql-серверу.
Так что, по моему мнению, я могу так же хорошо вернуть список.
Спасибо за ответы!