Відповіді:
Спробуйте return new T[0].AsQueryable();
Скажіть, у вас є IQueryable<T>
дзвінок result
:
return result.Take(0);
Я би радив проти відповіді alejandrobog, оскільки це все ще використовуватиме пам'ять для створення порожнього масиву.
Array.Empty<T>().AsQueryable();
або
Enumerable.Empty<T>().AsQueryable();
є кращими. Array.Empty буде виділяти статичний набраний масив, тому створюється лише один порожній масив з T, який поділяється між усіма порожніми критеріями.
Array.Empty<T>
доступний лише після .NET Framework 4.6. Для більш ранніх версій можна скористатисяnew object[0].Cast<T>()