【发布时间】:2013-07-15 18:47:01
【问题描述】:
我了解到您不能在 LINQ 的 where 子句中使用数组元素。例如:
Department department = db.Departments.Single(d => d.DepartmentID == teams[i].DepartmentID);
那失败了。但是,我很好奇为什么这在编译时没有被捕获?是否存在这样的情况,可以防止此类语句出现全面编译时错误?
【问题讨论】:
-
是的,LINQ to Objects(例如)。这样它就可以很好地工作了。
-
不一定相关,但会在解决此错误之前将
teams[i].DepartmentID移动到变量中吗?例如var departmentId = teams[i].DepartmentID然后引用departmentId代替? -
是的,这行得通。但如果您在各种数组上进行选择,它会很快变得冗长。
标签: c# .net linq entity-framework linq-to-entities