Я пытался выполнить объединение, а затем группу. Моя сгруппированная информация, которая возвращается, великолепна! работает как шарм, но мне по-прежнему нужен доступ к значениям вне группировки, если это имеет смысл..
Я нашел пример в stackoverflow, который, вероятно, объясняет это лучше
var query = from c in context.Contacts
join o in context.Orders on c.Id equals o.CustomerId
select new
{
Contact = c,
Order = o
} into ContactAndOrder
group ContactAndOrder by ContactAndOrder.Order.Id into g
select new
{
g.Key,
ContactWhatever = g.Sum(co => co.Contact.Whatever),
OrderWhatever = g.Sum(co => co.Order.Whatever)
};
. Теперь это, кажется, отлично работает, проблема в моей ситуации в том, что co.Order.Whatever является строкой, поэтому я получаю сообщение об ошибке, говорящее о том, что невозможно преобразовать строку в int, это я понимаю, поскольку агрегатная функция Sum ожидает int....
Мой вопрос действительно заключается в том, существует ли агрегатная функция или что-то похожее на то, что я могу получить значение co.Order.Whatever (строка в моем случае)
Проблема в том, что после завершения группы я теряю "с" и "о"
. Я надеюсь, что кто-то может помочь.
заранее спасибо