0
私は多くの企業があります。企業の中には主題があり、他はそうしていないものもあります。すべての企業には、変更日付と変更者があります。このような何か:LINQのグループステートメントでサマリーデータ以外のデータを渡すにはどうすればよいですか?
CompanyID Subjects Modified Modified By
1 2 Jan 1, 2011 Jon
2 4 Jan 1, 2010 Dave
3 1 Jan 1, 2009 Alan
4 0 Jan 1, 2008 Tom
ここの人々から多くの援助では、私は私が必要な情報を与えたLINQレポートを作成したが、それは更新日時を示さなかったと誰が会社のレコードを変更し
var abc = from c in companies
join s in subjects on "0000" + c.RowKey equals s.PartitionKey into outer
from s in outer.DefaultIfEmpty()
select new
{
Title = c.Title,
Subject = ((s == null) ? 0 : 1)
//, Modified = c.Modified,
// ModifiedBy = c.ModifiedBy
} into split
group split by split.Title into g
select new CompanySummary
{
Title = g.Key,
Subjects = g.Sum(s => s.Subject)
// ,Modified = g.Modified,
// ModifiedBy = g.ModifiedBy
};
私はコードを追加して(コメントアウトして)、会社の変更内容をお知らせしました。しかし、それは私にエラーを言った:
Error 1 'System.Linq.IGrouping<string,AnonymousType#1>' does not contain a definition for 'Modified' and no extension method 'Modified' accepting a first argument of type 'System.Linq.IGrouping<string,AnonymousType#1>'
私は間違って何を考えている人は誰ですか?私のコードは95%働いていますが、結果に変更された詳細をどのように渡すかわからないだけです
ハロースラーク。ありがとう、今私は理解する。あなたが気にしないなら、私がこれに使うことができる構文を教えてください。私は追加しようとしました:Modified = g.Last(Modified)、 ModifiedBy = g.Last(ModifiedBy)しかし、これは動作しませんでした。 –
'ModifiedBy = g.Last()。ModifiedBy' – SLaks
このトリックはありましたが、今はエラーが発生しました:エラー1暗黙のうちに 'string'を 'System.DateTime'に変換できません。私の会社ではこれを公開DateTimeに設定していますか? ModifiedBy {get;セット; } –