我是C#和.NET世界的新手。我想了解以下聲明。與C#中的Enumerable.Select混淆#
var xyz = Enumerable.Repeat(obj, 1).ToList();
var abc =
xyz.Select(xyzobj => new res {
foo = bar,
xyzs = new [] {xyzobj},
}).ToList();
據我所知,在選擇對象和變壓器的功能需要和返回對象的一種新形式。但在這裏,它需要一個帶有枚舉值和另一個對象的lambda表達式。
我有點困惑。以上是類似於
var abc = xyz.Select(xyzobj => {
//some work with xyzobj
//and return object.
}).ToList();
聲明有人可以解釋上述說法實際上做了,我的頭剛好與這些陳述打轉各地在我的新工作地點。
有人可以指導我找到很好的資源來理解lambda表達式和枚舉。
首先,從* valid *代碼開始。 '1 => ..'是無稽之談,會導致編譯器錯誤。 – user2864740
MSDN是你最好的選擇:http://msdn.microsoft.com/en-us/library/bb397687.aspx。選擇只是一個投影工作。 –
你可能也想看看這個: - http://blogs.msdn.com/b/matt/archive/2008/03/01/understanding-variable-capturing-in-c.aspx – sh1rts