Как я могу снова использовать выражения в операторах LINQ?

Просто убедитесь, что пустое значение phonelist является значением [] вместо значения nil.

В качестве альтернативы, значение nil является фальси в Ruby, поэтому вы можете использовать ноль-наказание

if phonelist
   phonelist.each do |phone|
     ...

20
задан Kent Boogaart 12 June 2009 в 14:22
поделиться

2 ответа

Если вы перейдете от синтаксического сахара LINQ, это возможно:

var goodProds = dataContext.Products.Where(MyExpressions.IsAGoodProduct());

Без него это невозможно.

Ничто не помешает вам смешать два стиля для создания единого запрос

Пример:

  var goodProds = from p in dataContext.Products
                                       .Where(MyExpressions.IsAGoodProduct())
                  group p by p.Category into g 
                  select new {Category = g.Key, ProductCount = g.Group.Count()};
23
ответ дан 30 November 2019 в 00:31
поделиться

Между прочим, я наткнулся на эту полезную статью , в которой объясняется, как можно создавать динамические запросы LINQ, которые ссылаются на функции, заключенные в выражения, используя собственное расширение ToExpandable (). метод. Предоставленное решение можно использовать в различных частях запроса LINQ, сохраняя при этом использование синтаксиса понимания вместо использования синтаксиса лямбда.

1
ответ дан 30 November 2019 в 00:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: