我試圖從一個IList集合(這裏的實體)複製值的StringBuilder作爲C#Lambda表達式
Entites.Select(n => objStringBuilder.AppendLine(n.Note));
任何人都可以請指導我究竟做錯了什麼?
謝謝!
我試圖從一個IList集合(這裏的實體)複製值的StringBuilder作爲C#Lambda表達式
Entites.Select(n => objStringBuilder.AppendLine(n.Note));
任何人都可以請指導我究竟做錯了什麼?
謝謝!
Select
不是你想在這裏用你的東西。嘗試轉換爲List<T>
並使用ForEach
代替。
Entities.ToList().ForEach(n => objStringBuilder.AppendLine(n.Note));
String.Join("", entities.Select(x => x.Note).ToArray())
,或者如果你堅持的StringBuilder:
Entities.Foreach(x => sb.Append(x.Note))
(該選擇期望你提供一個返回值)
這看起來更像是一個foreach操作。我會與傳統的每個堅守在這種情況下:
foreach (var n in Entities) {
objStringBuilder.AppendLine(n.Note);
}
你能告訴,出了什麼問題嗎? – 2010-12-23 13:29:44
這應該工作,雖然你應該真的使用ForEach而不是選擇,因爲你實際上沒有選擇任何東西。沒有什麼大不了的。如果它實際上不工作,你會得到什麼錯誤信息?有「n.Note」的問題? – 2010-12-23 13:31:24
此外,您拼寫的實體錯誤:「Entites」。這不是語法錯誤嗎? – 2010-12-23 13:36:03