实体或复杂types''不能在LINQ to Entities查询中构造

可能重复:
实体不能在LINQ to Entities查询中构造

var tasks = from i in data.Incidents join a in data.Accounts on i.CustomerID equals a.Acct_CID select new Tasks() { creator_id = a.ID, start_date = i.DateOpened, end_date = i.DateCLosed, product_code = i.ProductCode, install_type = i.InstallType, os = i.OSType, details = i.Description, solution = i.Solution, creator_name = i.TechID, category = i.Title, text = "Ticket for" + " " + i.Name, status_id = 7 }; foreach (var task in tasks) data.Tasks.Add(task); data.SaveChanges(); public class Incidents { [Key] public int IncidentID { get; set; } public string CustomerID { get; set; } public string ProductCode { get; set; } public string TechID { get; set; } public DateTime DateOpened { get; set; } public DateTime DateCLosed { get; set; } public string Title { get; set; } public string Description { get; set; } public string Solution { get; set; } public string Name { get; set; } public string OSType{ get; set; } public string InstallType { get; set; } public string AddOnSoftware { get; set; } public string ScreenShare { get; set; } } 

当我尝试迭代时给了我一个错误,我会喜欢这个帮助

在Linq-to-Entities中,您只能投影到匿名types或常规类。 您不能投影到现有的实体types。 你可以像这样用linq-to-objects

 var tasks = (from i in data.Incidents join a in data.Accounts on i.CustomerID equals a.Acct_CID select new { creator_id = a.ID, start_date = i.DateOpened, end_date = i.DateCLosed // ... }).AsEnumerable().Select(x => new Tasks { creator_id = x.creator_id, start_date = x.start_date, end_date = x.end_date }).ToList();