Хорошо, у меня есть элемент управления списком с 3 столбцами:
Год |NetTotal |GrossTotal
также у меня есть таблица с названием «Заказы» с несколькими столбцами, они содержат информацию о заказе и хранят идентификатор клиента, которому они принадлежат.
Вопрос: как я могу запросить эту таблицу?с (предпочтительно) linq (текст данных от LinqToSql), чтобы вернуть следующие данные?
Я хочу найти любую запись с соответствующим CustomerID, которая имела место, сгруппировать их по году, суммировать итоговые значения соответственно и добавитьих к списку просмотра?
Теперь я могу использовать лямда-выражения и агрегаты, просто не понятно, как (опция выводит, db - объект datacontext, CustomerID - переменная int32):
Dim Orders = (From order In db.Orders Where order.CustomerID = CustomerID).GroupBy(Function(p) p.Date.Year).GetEnumerator
Я считаю, что мне нужно было бы создать анонимный тип, подобный следующему:
Dim tmpYears = From prevs In db.Orders Select New With {.CustID = prevs.CustomerID, .Year = prevs.PaymentDate.Year, .NetPurchase, .GrossPurchase}
Но как мне объединить столбец Закуплено в группу?
Dim CustomerOrders = From ord In db.Orders Where Ord.CustomerID = custID Select ord
Dim tot = From O in CustomerOrders Select Aggregate netTot In O Into Sum(netTot.Price * netTot.Quantity * 1+ (netTot.Discount/100))
Я хочуобъединить их.
Есть предложения?(Я прочитал this , но я хочу его в Linq, потому что это командный проект, и мы договорились использовать Linq вместо отправки .ExecuteQuerys и т. Д. В db. Также это решение LinqToSQL, так что было бы лучше, еслия мог бы использовать это)