C 1つのLINQクエリ(ないサブクエリ)で、私はこのコードを持っている:リストと辞書#
for (int i = 0; i < _smartBoostItems.Count; i++)
{
foreach (var condition in _levelConditionsDict)
{
if (_smartBoostItems[i].progression_to_finish >= level.PercentsLeftToLevelCompleteWhileTurnType
&& _smartBoostItems[i].condition
&& _smartBoostItems[i].condition_id == condition.Key)
{
_availibleSmartBoosts.Add(_smartBoostItems[i]);
}
}
}
_smartBoostItems
を - それはList<SmartBoostLibItem>
_levelConditionsDict
だ - それは私がこのコードを変換するにはどうすればよいDictionary<int, int>
ですlinqクエリですか?それとももっと悪くなるのだろうか?私はこのネストされたループが好きではない、あまりにも多くの要素がありません。約500の反復があります。
でもLINQは、ループを使用し、あなただけ –
はあなたのコードがやろうとしているかを説明してもらえそれらを見ていないのだろうか?私たちはこれを無料でやっています。そして、あなたのコードを歩き回らなければなりません。 –
あなたのコードをどのようなファンシーフレームワークにしても、項目のすべての組み合わせを評価する必要があります。パフォーマンス上の問題がなければ、「読み込みと保守が簡単です」と尋ねるべきです。「パフォーマンス上の問題がある場合は、すべての組み合わせをすべて検査せずに同じ情報を得る方法を尋ねる必要がありますアイテム。 – user1304444