我有以下查询:
).ToList();
).ToList();
IList体育场=新List();foreach(int teamId in teamIds) { IList teamSectors =IList stadiums.Add(新InfrStadium(teamId,teamSectors);}
我在这里担心的是,对于从DB收到的集合,我需要在客户端每个团队应用Where/ToList一次
有什么方法可以优化吗?
谢谢。
潜在地,我可以对服务器上的项进行排序(使用索引),然后对teamIds进行排序,并使用扇区集合,而不需要真正的“查询”集合.但也许有更好的方法来优化这一点吗?
发布于 2011-01-15 04:38:09
我想你可以一步到位。
var stadiums = DbContext.sectors
.Where( s => s.Type == typeValue )
.ToLookup( s => s.TeamId )
.Select( l => new InfrStadium( l.Key, l.ToList() )
.ToList();尽管,如果您可以让InfrStadium的构造函数接受一个IEnumerable<Sector>而不是需要一个List<Sector>,那就更好了,那么您可以省略额外的ToList。
https://stackoverflow.com/questions/4697954
复制相似问题