在我的 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方法的任何其他代码。