参加してからgroupbyを実行しようとしていましたが、返されるグループ化された情報はすばらしいです。魅力のように機能しますが、それが理にかなっている場合は、グループ化の外部の値にアクセスする必要があります。
私は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です。文字列が何であれ、文字列をintに変換できないというエラーが表示されます。これは、集計関数Sumがintを期待していることを理解しています。
私の質問は、実際には、co.Order.Whatever(私の場合は文字列)の値を取得できる集計関数などがありますか?
問題は、group byが実行されると、「c」と「o」が失われることです。
誰かが助けてくれることを願っています。
前もって感謝します