Я пытаюсь запросить вложенный связанный список, где результат - это продукт дочернего значения, умноженный на значения в родительском списке, а затем добавляется результат.Вложенные вложенные связанные списки
Этот код работает:
var X = (from B in Main.Globals.BookLL
from G in B.GreeksLL
where B.DealNo == 1 && B.Strategy == "Condor" &&
G.BookOrComp == "Book" && G.GreekType == "Delta"
select new
{
Total = G.Data[3] * B.BookPosn * B.FxRate
}).Sum(s=>s.Total);
... но я бы предпочел, чтобы использовать лямбда. Этот код ниже дает ошибку компиляции, показанную как комментарий в конце строки.
double Z = Globals.BookLL.Where(B => B.DealNo == 1 && B.Strategy == "Condor").
SelectMany(G => G.GreeksLL).
Where(G => G.BookOrComp == "Book" && G.GreekType == "Delta").
Select(G => new { Total = G.Data[3] * B.BookPosn*B.FxRate }). // Compile error "B does not exist in the current context"
Sum();
Я не знаю, как это сделать, пожалуйста, взгляните и исправьте запрос? Благодарю.
_ «Этот код не работает» _ - это не полезно. – MickyD
@MickyD читает '// B не существует в текущем контексте' в коде. –
Я получаю ошибку компиляции, показанную как комментарий в коде. Хорошо, я отредактирую вопрос! – Zeus