当我从集合访问其属性时,我发现ValueTuples的评估结果有所不同。
public static List<Tuple<string, bool>> MyTupleList = new List<Tuple<string, bool>>
{
new Tuple<string, bool>("test", true)
};
public static List<(string b, bool c)> MyList = new List<(string b, bool c)>
{
("test", true)
};
为什么这两行突出显示的行的评估结果不同,如何更改“ MyList [0] .c”以正确获取值?
答案 0 :(得分:4)
这似乎是Visual Studio 2017中的错误。
Roslyn的github问题跟踪器中提到了一些相关的错误,例如:
List<Tuple>
properly-它仍然处于打开状态,但似乎是固定的(当访问值为Item1
时),请参阅Rango的评论。由于Visual Studio的问题跟踪器不是公开的,因此我们只能等待并希望修复这些错误。