【发布时间】:2011-07-06 15:14:33
【问题描述】:
我正在尝试缩小查询结果的范围,以便稍后用于数据绑定。我想获取在我的 gridview 中使用的所有 ProgramId,并将它们从我的下拉列表的数据源中删除(即,这样用户就不能选择创建对象并将其插入到与已经使用相同 ProgramId 的 gridview 中存在)
这里有一些代码:
var query = from goals in DataContext.Goals
select goals;
var query2 = (from goals in query.AsEnumerable()
select goals.ProgramId).ToList(); //List<long?>
var query3 = (from progs in DataContext.Programs
select progs.ProgramId).ToList(); //List<long>
var cgps = query3.Except(query2);
我在var cgps = query3.Except(query2); 上遇到了这些错误:
错误 29 'System.Collections.Generic.List' 不包含 'Except' 的定义和最佳扩展方法重载 'System.Linq.ParallelEnumerable.Except(System.Linq.ParallelQuery, System.Collections.Generic. IEnumerable)' 有一些无效参数 C:...\Shmeh\Shmeh\Shmeh\this.aspx.cs 24 226 Project
错误 30 实例参数:无法从 'System.Collections.Generic.List' 转换为 'System.Linq.ParallelQuery' C:...\Shmeh\Shmeh\Shmeh\this.aspx.cs 24 226 项目
如果您知道如何有效地做我想做的事情,任何帮助将不胜感激!谢谢!
【问题讨论】:
标签: c# .net asp.net linq linq-to-sql