2015-07-21 83 views
1

我收到此錯誤無法隱式轉換類型 'System.Collections.Generic.List <AnonymousType#1>' 到「System.Collections.Generic.List <FirstApp.Model.TeamDetails>

不能隱轉化型 System.Collections.Generic.List<AnonymousType#1>System.Collections.Generic.List<FirstApp.Model.TeamDetails>

這有什麼錯我的代碼?

這裏是我的代碼

TeamDetails

public class TeamDetails 
{ 
    [Key] 
    public int TeamId { get; set; } 
    public string TeamName { get; set; } 
    public string Description { get; set; } 
    public int? UserCount { get; set; } 
} 

視圖模型

public class ViewTeamList 
{ 
    public List<TeamDetails> TeamNext { get; set; } 
} 

控制器

public ActionResult Next(int dataid) 
{ 
    ViewTeamList viewTeamList = new ViewTeamList(); 
    var a = from t in tDbContext.Teams 
      join u in tDbContext.Users on t.TeamId equals u.TeamId into g 
      where t.Deleted != true 
      select new { TeamId= t.TeamId,TeamName = t.TeamName, Description = t.Description, UserId = g.Count() }; 

    var next = a.OrderBy(t1 => t1.TeamId).Where(t1 => t1.TeamId > dataid).FirstOrDefault(); 
    viewTeamList.TeamNext = a.ToList(); 
    return PartialView("_ViewTeamDetails", viewTeamList); 
} 

我不能這個值賦給

viewTeamList.TeamNext = a....; 
+2

你構建一個匿名在那裏輸入:'select new {TeamId = ...',這不兼容'TeamDetails'。 –

回答

5

此構造一個匿名類型,而不是TeamDetails

select new { TeamId= t.TeamId,TeamName = t.TeamName, Description = t.Description, UserId = g.Count() } 

您應將其更改爲以下

select new TeamDetails { TeamId = t.TeamId, TeamName = t.TeamName, Description = t.Description, UserCount = g.Count() } 

所以a.ToList()將是List<FirstApp.Model.TeamDetails>

相關問題