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函數轉換爲相應的類型即可。