私のASPプロジェクトには、次のようなコードがありますrr
。RegulationGroups
private IEnumerable<RegulationGroup> LoadRegulations(string moduleName)
{
// database calls
yield return subLrg;
}
別のクラスでは、コードは複数回ループします
foreach (RegulationGroup rg in rr.RegulationGroups)
{
}
RegulationGroups
コードがデータベース呼び出しをループするたびに発生します。データベース呼び出しを回避するにはどうすればよいですか?
わたしはできると思う
- 廃止し
yield return
、使用するList
- をリストにキャッシュし、モジュールで使用して、メソッド
IEnumerable
を使用する他のコードに影響を与えないようにします。LoadRegulations