Допустим, у меня есть следующий запрос:Фильтр запроса с помощью метода расширения в группе по контексту
From row In DataSet.A
Where row.Position <> 5
Group row By row.Name Into eGroup = Group
Select New With {
.Name = Name,
.Amount = eGroup.Count(Function(x) x.Money)
}
Объект DataSet имеет поле (дата). Из-за группировки поле больше не существует после группировки. Поэтому, если я хочу фильтровать по дате, я должен сделать это, прежде чем группировать.
У меня есть список, который выглядит как:
Dim j as New List(of Integer)
j.Add(1)
j.Add(2)
Теперь я хочу, чтобы фильтровать по месяцам. Я знаю, что я могу использовать
.Where(Function(el) ls.Contains(datepart(month,el.date)))
Но если установить это за Where row.Position <> 5
запрос не работает больше, так как она, как сломаны и не может подключиться к коду послесловие.
Кто-нибудь может сказать мне, как установить фильтр?
Как C# включает в себя? –
Как в стороне, вы уверены, что правильно «подсчитывать» деньги за каждую групповую инстанцию «Сумма»? –
Привет, Тим, да, все в порядке, исходный запрос немного длиннее и может быть немного запутанным, поэтому я использовал более короткую версию. Алекс: Это не имеет значения, если решение находится в C# или vb. Многие программисты могут программировать оба (.NET). Я мог бы переписать решение C#. Поэтому мне не важно, есть ли решение в C# или vb, вот почему. – ruedi