从嵌套列表中获取值时使用 Linq
Using Linq when getting value from nested list
我需要将变量的值设置为嵌套在多个列表中的 属性 的值。每个列表只有一个项目,除了一个列表。我正在尝试这样做:
var myValue = myListA[0].myListB[0].myListC[0].
myListD.Where(x => x.Name == "Misc Expenses").myListE[0].price;
这会产生编译时错误,指出 myListD 不包含 myListE 的定义。正确的语法是什么?
在 .Where 子句之后,您需要 .First()(或 .ToList())才能应用 Where 子句:
var myValue = myListA[0].myListB[0].myListC[0].
myListD.Where(x => x.Name == "Misc Expenses").First().myListE[0].price;
不过,从技术上讲,您也可以直接将 .Where 替换为 .First:
var myValue = myListA[0].myListB[0].myListC[0].
myListD.First(x => x.Name == "Misc Expenses").myListE[0].price;
我需要将变量的值设置为嵌套在多个列表中的 属性 的值。每个列表只有一个项目,除了一个列表。我正在尝试这样做:
var myValue = myListA[0].myListB[0].myListC[0].
myListD.Where(x => x.Name == "Misc Expenses").myListE[0].price;
这会产生编译时错误,指出 myListD 不包含 myListE 的定义。正确的语法是什么?
在 .Where 子句之后,您需要 .First()(或 .ToList())才能应用 Where 子句:
var myValue = myListA[0].myListB[0].myListC[0].
myListD.Where(x => x.Name == "Misc Expenses").First().myListE[0].price;
不过,从技术上讲,您也可以直接将 .Where 替换为 .First:
var myValue = myListA[0].myListB[0].myListC[0].
myListD.First(x => x.Name == "Misc Expenses").myListE[0].price;