我有一個(gè)初始化列表的例程......var items = new List<TodoItem>();//... load items from a REST service ...return items;隨后的例程嘗試枚舉列表......foreach (var i in items){ // ...}如果門戶沒(méi)有返回任何項(xiàng)目,則列表是null,并且嘗試枚舉它失敗......原因已經(jīng)討論過(guò)。直到現(xiàn)在我!= null在枚舉之前做了一個(gè)檢查。現(xiàn)在我讀了一篇 SO 帖子,其中有人建議null在列表沒(méi)有項(xiàng)目的情況下返回是“不好的做法” 。如何將列表初始化為可以枚舉的空列表,而不是讓它成為null?我想到的唯一方法是像這樣的序列var items = new List<TodoItem>();items = Enumerable.Empty<TodoItem>()這不會(huì)編譯:無(wú)法將類型 System.Collections.Generic.IEnumerable' 隱式轉(zhuǎn)換為 'System.Collections.Generic.List'。存在顯式轉(zhuǎn)換(您是否缺少演員表?)。嘗試使用顯式轉(zhuǎn)換...items = (List<TodoItem>)Enumerable.Empty<TodoItem>();因運(yùn)行時(shí)異?!盁o(wú)效轉(zhuǎn)換”而失敗任何人都可以建議我如何正確初始化我的列表嗎?
1 回答

當(dāng)年話下
TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊
var items = new List<TodoItem>();
創(chuàng)建一個(gè)空列表。完畢。
如果您正在執(zhí)行此操作并且結(jié)果為null
,則您的代碼將其設(shè)置為null
并且您尚未顯示該代碼。也許它與您的“從 REST 服務(wù)加載項(xiàng)目”代碼有關(guān)?
- 1 回答
- 0 關(guān)注
- 235 瀏覽
添加回答
舉報(bào)
0/150
提交
取消