【发布时间】:2011-05-18 22:26:07
【问题描述】:
这段代码有什么问题? 我在最后一行遇到了这个异常:
无法创建常量值 类型 'System.Collections.Generic.IEnumerable`1'。 只有原始类型('例如 Int32, 支持字符串和 Guid') 这个上下文。
var query = from colT in dal.TBL_Gharardad
select colT;
if(lstTarafeGharardadIds.Count>0)
query = from q in query
join id in lstTarafeGharardadIds on q.TarafeGharardadId equals id
select q;
dgvListeGharardad.DataSource = query.ToList();
最后一个TarafeGharardadIds 是List<int>
我也测试了
dgvListeGharardad.DataSource = query;
如果if 表达式等于 false 并且这段代码一切正常
query = from q in query
join id in lstTarafeGharardadIds on q.TarafeGharardadId equals id
select q;
不运行。但我不明白我在最后一行(在此代码上)得到了错误:
dgvListeGharardad.DataSource = query.ToList();
【问题讨论】:
-
格式化您的代码,使其可读 - 那么人们可能更有可能阅读它:)
-
请格式化您的代码以使其更具可读性。如果可能的话,也删除它不必要的部分
-
lstTarafeGharardadIds中的项目类型是什么?
标签: c# linq entity-framework