1

以下は、アイテムに賛成票を投じたユーザーの名前を選択し、それをカンマ区切りの文字列に入れます。

 var string = string.Join(", ", comment.CommentVote.Where(v=> v.Vote == true).Select(v => v.User.FirstName).ToArray());

姓と名を取得し、それらをまとめて、カンマ区切りのリストにリストできるようにしたいと考えています。

コンテキスト: Facebook に似たものを作成しようとしています:

 John Doe and 25 others like this

"25 other" は、ホバー時にユーザーのリストを提供します。投票したユーザーをループして姓と名を取得し、それらを連結してからコンマを追加できます。foreach ループを回避できるもっと単純なものがあるはずです。

4

2 に答える 2

3

それらを連結するだけです:

var str = string.Join(", ", 
                      comment.CommentVote
                             .Where(v=> v.Vote)
                             .Select(v => v.User.LastName + " " + v.User.FirstName));

また、オーバーロードを受け入れるToArray()ように、明示的に呼び出す必要はありません。また、 type のエイリアスであるため、 name の変数を持つことはできません。string.JoinIEnumerable<T>stringSystem.String

于 2012-12-18T23:52:58.953 に答える
2

selectステートメントで必要な値に結合するだけです。

var results = string.Join(", ", comment.CommentVote.Where(v=> v.Vote)
              .Select(v => string.Format("{0} {1}", v.User.FirstName, v.User.LastName)));

編集:申し訳ありませんが、Konstantin Vasilcovはすでに回答しています

于 2012-12-19T00:02:15.267 に答える