“System.Linq.IQueryable”不包含“Contains”的定義 或者“System.Linq.IEnumberable”不包含“Contains”的定義

例如:
from m in TeachingInfo where
(from t in TeacherInfo 
where (from o in TeacherInfo where o.TeaID==1001 select o.TeaGroup).Contains(t.TeaGroup)
select t.TeaID).Contains(m.TeacherID)
select m
描述爲://根據管理員登錄ID獲取所在部門,查找該部門的員工編號,查找編號是否在教學信息的教師編號中 
出現錯誤:“System.Linq.IQueryable<int>”不包含“Contains”的定義,並且最佳擴展方法重載“System.Linq.Queryable.Contains<TSource>(System.Linq.IQueryable<TSource>, TSource)”的某些參數無效
問題原因: m.TeacherID是System.Linq.IQueryable<int>類型,而“System.Linq.IQueryable<int>”不包含“Contains”的定義

解決辦法

1.將 m.TeacherID轉化爲int,Convert.ToInt(m.TeacherID)

2.使用系統自帶的ToString()轉化:....ToString().Contains(m.TeacherID)

一般出現contains不包含,是因爲類型不一致,將contains的對象使用Convert函數轉換爲相應的類型即可。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章