當方法返回IEnumerable<T>
並且我沒有任何要返回的內容時,我們可以使用Enumerable.Empty<T>()
。Enumerable.Empty <T>()等價於IQueryable
是否有相當於上面返回IQueryable<T>
當方法返回IEnumerable<T>
並且我沒有任何要返回的內容時,我們可以使用Enumerable.Empty<T>()
。Enumerable.Empty <T>()等價於IQueryable
是否有相當於上面返回IQueryable<T>
可能:
Enumerable.Empty<T>().AsQueryable();
嘗試return new T[0].AsQueryable();
@Nauman - 實際上創建了[空] T,陣 - T的沒有新對象實際創建。 – FriendlyGuy 2014-02-20 15:56:18
Enumerable.Empty<T>().AsQueryable();
應該這樣做的方法。
假設你有一個名爲IQueryable<T>
result
:
return result.Take(0);
我知道,目前這是唯一的簡單,直接和骯髒的;-)解決方案 – Nauman 2010-04-23 11:04:17
不幸的是,不會創建一個實際的空的IQueryable,這意味着它會導致例如'Union'查詢被分解成多個查詢而不是一個查詢。 – NetMage 2017-05-22 23:11:25