Как я могу переписать этот запрос linq для Entity on с помощью выражения лямбда?
Я хочу использовать let ключевое слово или эквивалент в выражении лямбда.Как «позволить» в выражении лямбды?
var results = from store in Stores
let AveragePrice = store.Sales.Average(s => s.Price)
where AveragePrice < 500 && AveragePrice > 250
Для некоторых подобных вопросов, как то, что комментируется под мой вопрос, он предложил
.Select(store=> new { AveragePrice = store.Sales.Average(s => s.Price), store})
который рассчитает AveragePrice для каждого элемента, в то время как в стиле запросов я упомянул, пусть выражение мешает вычислить среднее число раз.
возможно дубликат [код эквивалентном ключевое слово 'let' в цепочке вызовов метода расширения LINQ] (http://stackoverflow.com/questions/1092687/code-equivalent-to-the-let-keyword-in-chained-linq-extension-method-calls) – Eranga
@Eranga: Я, что вопрос, Марк выбрал animalName.Length для каждого элемента. Здесь я не хочу вычислять Среднее значение всех элементов для каждого элемента. –
@Reza: среднее значение вычисляется только один раз для объекта хранилища, точно так же, как в вашем запросе ... – digEmAll