基本上我正在尝试做这样的事情:

image.Layers

它返回除Parent层以外的所有层的IEnumerable,但是在某些情况下,我只想这样做:
image.Layers.With(image.ParentLayer);

因为与image.Layers可以满足的通常用法的100相比,它仅在几个地方使用。这就是为什么我不想创建另一个也返回Parent层的属性。

最佳答案

一种方法是从项目(例如数组)中创建一个单例序列,然后对其进行Concat编码:

image.Layers.Concat(new[] { image.ParentLayer } )
如果您确实经常这样做,请考虑编写Append(或类似的)扩展方法,例如listed here,它可以让您执行以下操作:
image.Layers.Append(image.ParentLayer)
.NET Core更新(per the "best" answer below):

09-04 12:19
查看更多