を使用して、最高の出演者を選ぶ方法var battingContribution = IQueryable<Player, Runs>
(基本的には選手とその合計バッティングスコアのリスト)と別のセットvar bowlingContribution = IQueryable<Player, Runs>
が与えられている場合、バッティングスコアからボウリングスコアを差し引いたものが最も高い正味の合計をもたらすか?LINQ
Q
LINQ
0
A
答えて
1
両方貢献しているだけPlayers
について次の作品(私は2つのタイプのparamsでのIQueryableを知りませんが):LINQのサンプルへ
var BestPlayer = (from a in (from bt in battingContribution from bw in BowlingContribution where bt.Player == bw.Player select new { Player = bt.Player, Diff = bt.Runs - bw.Runs)) orderby a.Diff descending select a).First().Player;
MSDNの参照はhttp://msdn.microsoft.com/en-us/vcsharp/aa336746
EDITを参照してください -
var BestPlayer = (from a in (from bt in batRuns from bw in bowlRuns where bt.Player == bw.Player select new { Player = bt.Player, Diff = bt.Runs - bw.Runs}) orderby a.Diff descending select a).First();
+0
あなたが提供したものを軽く編集してください: 'var BestPlayer =(from from(btからのbtからのBtRunsのbwからのbt.Player == bw.Playerを選択してください){Player = bt.Player、Diff = bt。 Runs-bw.Runs})orderby a.Diff降順選択a).First(); ' しかし、それは間違いなく機能します! –
2
あなたはを持っていると仮定すると:OPから完全にコメントあたりとして代わりに、(2型パラメータを持っていません)IQueryable
の:あなたが好む場合
// Just to make sure that we don't get exceptions if a player is only in one
// of the two collections -- you might want to handle this case differently
var players = battingContribution.Keys.Intersect(bowlingContribution.Keys);
// Put each player and their performance into what is essentialy a tuple
var performance = players.Select(p =>
new {
Player = p,
Performance = battingContribution[p] - bowlingContribution[p]
});
// Sorting
var orderedPerformance = performance.OrderByDescending(item => item.Performance);
// Selecting best performer
var bestPerformer = orderedPerformance.First().Player;
あなたは簡潔さのために一緒にこれらをチェーンすることができます。
関連する問題
- 1. LINQクエリヘルプ(LINQ to SQL)
- 2. LINQ to SQLとLINQ to DataSet
- 3. LINQ
- 4. LINQ
- 5. LINQ
- 6. LINQ
- 7. LINQ
- 8. LINQ
- 9. LINQ
- 10. LINQ
- 11. LINQ
- 12. LINQ
- 13. LINQ
- 14. LINQ -
- 15. LINQ
- 16. LINQ
- 17. LINQ
- 18. LINQ
- 19. LINQ:
- 20. LINQ
- 21. LINQ
- 22. 私はLINQを使用してLINQ
- 23. LINQのヘルプは、私がLINQの次き
- 24. SQLからLinqへ:右のジョインでLINQ
- 25. 私は2つのLINQ持ってLINQ
- 26. LINQ別のLINQクエリへのクエリ
- 27. ブールLINQ
- 28. LINQツーエンティティ
- 29. nhibernate Linq
- 30. LINQは
2つの型パラメータを受け入れる 'IQueryable'はありません。あなたは本当に何を使っていますか? –
@DanielHilgarth:おそらく 'IDictionary'です。 – Jon
これは実際には匿名のタイプです。私はちょうどそこにいくつかの擬似コードを投げ、私の意見を理解しました。おそらく私のコードを最適化しているところには至っていません。ただ結果を得ようとしています。 –