当我尝试将int与int进行比较时(当比较字符串工作时)我得到此错误
IEnumerable<Commune> myCommunes = from d in db.Communes
where d.CodePostal == Convert.ToInt32(CodePostal.Text)
select d;
foreach (Commune c in myCommunes)
{
CommunesList.Add(c);
}
有什么想法吗?
答案 0 :(得分:8)
看起来CodePostal.Text
是现有上下文中的内容 - 所以你要做的就是从查询中提取它:
int code = Convert.ToInt32(CodePostal.Text); // Or use int.Parse...
// Not using a query expression here as it just adds extra cruft
IEnumerable<Commune> myCommunes = db.Communes.Where(d => d.CodePostal == code);
目前尚不清楚CommunesList
来自哪里 - 但如果在此之前它是空的,你可以使用:
CommunesList = db.Communes.Where(d => d.CodePostal == code).ToList();
答案 1 :(得分:0)
使用此: db.Communes.Where(d =&gt; d.CodePostal ==(int)CodePostal.Text)