我有一个LINQ语句,其中选择我需要调用一个方法,该方法的参数是查询中选择的项目。
以下是一个例子:
List<Foo> foos = new List<Foo> {....};
float GetPrice(Foo) {....}
var query = foos
.Where(x => x.ID == 1)
.Select(x => new
{
aaa = GetPrice(????)
});
如何在GetPrice(????)的调用中指定所选的Foo?
答案 0 :(得分:2)
x
语句中的Select()
将代表Foo
个对象,因为您要从List<Foo>
查询,因此您应该能够传入x
方法的GetPrice()
:
aaa = GetPrice(x)
所以你的整个代码看起来像这样:
var query = foos.Where(x => x.ID == 1)
.Select(x => new {
aaa = GetPrice(x)
});