【发布时间】:2013-05-15 07:18:19
【问题描述】:
有哪些替代方法可以实现由此产生的相同结果:
myCollection.Select(item => item.FirstValue)
.Concat(myCollection.Select(item => item.SecondValue)).ToList();
场景是一个名为myCollection 的Collection<MyClass>,其中包含MyClass 的实例(见下文)。我想为myCollection 中的每个项目创建一个List<int> 实例,其中包含MyClass.FirstValue 和MyClass.SecondValue。
public class MyClass
{
public int FirstValue { get; set; }
public int SecondValue {get; set; }
}
【问题讨论】:
-
你不能简单地将整数作为列表存储在 MyClass 中吗?
-
你似乎有一个很好的解决方案。一种可能(尽管略有不同)的替代方法是
myCollection.Select(x => new[] {x.FirstValue, x.SecondValue}).SelectMany(x => x);请注意,这将交替使用值,而不是先拥有一个然后再拥有另一个。 -
你已经拥有的东西对我来说看起来不错。为什么需要替代方案?
-
@dtb 只是想要我的启迪的替代品
-
@ƉiamondǤeezeƦ 你特别问“使用 LINQ”,这是为什么呢?由于您评论说您有兴趣学习其他方法来做到这一点,以便您找出哪种方法最有效,我认为可能的答案可能是“不要在此处使用 LINQ”。