我对在实体框架上进行查询的效率有一些疑问。 假设我有表A连接到10个不同的表B,C,D ...... 我想得到B.Name,C.Name,C.value,D .......(等等)的值 是否更好地使用Linq加入所有表并在一个查询中完成所有操作? 比如
var datas = from a in dataTable.A
join b in dataTable.B on a.bID = b.ID
...
select new {a.ID,a.valueOfsomething, b.Name.....}
或者使用一堆字典(例如
)会更有效率Dictionary<int,TableB> bDictionary = dataTable.B.ToDictionary(x=>ID)
...
result.bValue = bDictionary[datas.bID.Value].Name
让我们假设我们在表A上处理大约100,000行,每个表有大约5-10列,我在查询后得到的列表可能会在一次运行中获得100,000行