4 回答

TA贡献1735条经验 获得超5个赞
您可以为此使用匿名对象..
var items = result.Select(p => new { ValueA = p.GetValue(0), ValueB = p.GetValue(1) });
然后访问每个项目
foreach(var item in items)
{
var valueA = item.ValueA;
var valueB = item.ValueB;
}

TA贡献1810条经验 获得超4个赞
您可以使用Take
扩展方法:
items.Take(x);
这将返回x
集合的第一个项目。
如果你想跳过某些元素,可以使用Skip(x)
before 调用Take
。这两种方法经常用于分页。

TA贡献1818条经验 获得超8个赞
private class Foo
{
public int Item1;
public int Item2;
public int Item3;
}
static void Main(string[] args)
{
List<Foo> foos = new List<Foo>
{
new Foo() { Item1 = 1, Item2 = 2, Item3 = 3 },
new Foo() { Item1 = 4, Item2 = 5, Item3 = 6 },
new Foo() { Item1 = 7, Item2 = 8, Item3 = 9 }
};
// Create a list of lists where each list has three elements corresponding to
// the values stored in Item1, Item2, and Item3. Then use SelectMany
// to flatten the list of lists.
var items = foos.Select(f => new List<int>() { f.Item1, f.Item2, f.Item3 }).SelectMany(item => item).Distinct();
foreach (int item in items)
Console.WriteLine(item.ToString());
Console.ReadLine();
}

TA贡献1812条经验 获得超5个赞
如果你想要不同然后2,那么,
result.Select(p => p).Distinct().Take(2);
如果只有2的话,
result.Take(2);
- 4 回答
- 0 关注
- 111 浏览
添加回答
举报