如果你有一個充滿的IQueryable變量。如何在IQueryable中添加空行?
如何在該列表末尾添加一個新的空條目?
這是我必須做的:
- 如果有2項中添加3個空項
- 如果有0項中添加5空項
- 如果有5項,加5空條目
您現在可以看到的圖案,它在asp.net是一個爲中繼。
我應該簡單地創建一個泛型列表(.toList()),並使用添加功能,或者是有沒有更好的方式來做到這一點?
如果你有一個充滿的IQueryable變量。如何在IQueryable中添加空行?
如何在該列表末尾添加一個新的空條目?
這是我必須做的:
您現在可以看到的圖案,它在asp.net是一個爲中繼。
我應該簡單地創建一個泛型列表(.toList()),並使用添加功能,或者是有沒有更好的方式來做到這一點?
好吧,如果你很高興將其轉換爲IEnumerable<T>
可以使用
query.Concat(Enumerable.Repeat(new SomeRow(), 5)
.Take(5);
注意,將添加相同額外的連續5次(再切總降到5)。如果您需要然後才能夠編輯行,這將不起作用;要做到這一點,你想要的東西,如:
query.AsEnumerable()
.Concat(Enumerable.Range(1, 5).
.Select(ignored => new SomeRow())
.Take(5);
(我不認爲有調用同一個功能n
倍的更簡單的方法,但我可能是錯的。)
編輯:我已根據評論添加了致電AsEnumerable()
的電話。基本上調用AsEnumerable
意味着「我已經完成了SQL位;其餘的正在處理中」。
那麼,我會列出它並使用Length屬性來確定下一步該做什麼。
但是,如果你想不做到這一點,你可以在一個IEnumerable五個空項做一個聯盟,然後做的結果採取(5)。似乎有點多餘,並沒有更短,壽。
@Fredou:萬一你不看註釋 - 我已經編輯我的答案了。 –