2013-03-30 52 views
0

錯誤:實體框架連接3個表的查詢錯誤

Cannot convert method group 'ToList' to non-delegate type 'System.Collections.Generic.List'. Did you intend to invoke the method? D:\PROJECTS\CECB2013-03-26\CECB\cecb.Functions\ActivationCodeEmail.cs 102 20 cecb.Functions*

我的代碼是

List<Members> teamMembers = new List<Members>(); 

var query = from c in cecbContext.Projects 
      join b in cecbContext.TeamMembers on c.proj_team equals b.team_reference 
      join d in cecbContext.Members on b.mem_reference equals d.mem_reference 
      select new 
        { 
         d.mem_reference 
        }; 

    return query.ToList<Members>; 
} 

回答

1

ToList後忘記了括號 - 這是一個(擴展)方法:

return query.ToList<Members>(); 

雖然您還有其他問題 - 您試圖將IQueryable<AnonymousType>變成List<Members>

如果您在Select條款創建Members情況下,它會工作,你就可以省略對ToList()

select new Members 
{ 
    ... 
}; 

return query.ToList(); // this will create a List<Members> 
+0

沒有好友泛型類型參數,然後它說的 錯誤「 System.Linq.IQueryable '不包含'ToList'的定義和最佳擴展方法重載'System.Linq.Enumerable.ToList (System.Collections.Generic.IEnumerable )'有一些無效參數 – Gayashan

+0

@加亞什我得到了:)我已經更新了我的答案 –

+0

@Gayashan哦 - 你必須添加'使用System.Linq;''IQueryable .ToList()'是一個擴展方法。 –