2013-04-21 82 views
0

内含有错误:误差在LINQ无法从 'System.Collections.Generic.IEnumerable <AnonymousType#1>' 转换为“System.Linq.IQueryable <AnonymousType#2>

error in linq cannot convert from 'System.Collections.Generic.IEnumerable' to 'System.Linq.IQueryable

为什么呢?

public class ListQuestionAssessor 
{ 
     public string sum { get; set; } 
     public int QuestionsID { get; set; } 
     public int AssessorID { get; set; } 
     public int AssessID { get; set; } 
} 

List<ListQuestionAssessor> objList = new List<ListQuestionAssessor>(); 

     var lisaAddAssessor = (from p in objList 
           where 
            ! 
            (from assessor in ObjNotIn 
            select new 
            { 
             assessor.id 
            }).Contains(new { p.QuestionsID }) 
           select new QuestionAssessor() 
           { 
            QuestionsID = initQuestionerId 

           }).ToList(); 
+0

我的问题解决了坦克 – 2013-04-21 06:31:41

+0

请告诉我们发生了什么事或删除这个问题 – 2013-04-21 11:28:24

回答

0

我要说的是,问题是,你正试图检查

.Contains(new { p.QuestionsID }) 

包含期待同类型集合的参数。并且由于收集是匿名的,所以这可能是导致错误的原因。

改写为

.Any(a => a.id == p.QuestionsID) 
相关问题