【发布时间】:2018-01-19 18:27:10
【问题描述】:
有没有更好的方法在 C# 7 中使用 var 目标变量来选择命名元组?我在示例 1 中一定做错了什么,或者完全误解了某些东西。我似乎必须明确设置目标类型才能做到这一点。
//1. Fails to compile with "incorrect number of type parameters" issue.
var tuples = source.Select<(int A, int B)>(x => (x.A, x.B));
//2. Compiles
IEnumerable<(int A, int B)> tuples = toCheck.Select(x => (x.A, x.B));
//3. Compiles
var tuples = new HashSet<(int A, int B)>(source.Select(x => (x.A, x.B)));
【问题讨论】: