【发布时间】:2015-04-27 12:44:04
【问题描述】:
我已将我的自定义模型用于我的视图中,但当我尝试使用它时出现错误
无法在 LINQ to Entities 查询中构造实体或复杂类型“Prep2Model.TechProfile”。
我不知道如何解决。
这是我的相关类和控制器
自定义视图模型
namespace Prep2.Models
{
public class MyProjectViewModel
{
public IEnumerable<Project> Project { get; set; }
public IEnumerable<MyProjectCustomObject> Data { get; set; }
}
}
MyProjectCustomObject
namespace Prep2.Models
{
public class MyProjectCustomObject
{
public int ProjectId { get; set; }
public string ProjectCustomer { get; set; }
public string ProjectName { get; set; }
public IEnumerable<TechProfile> ProjectTechProfile { get; set; }
public int MemberId { get; set; }
public string MemberRole { get; set; }
public short? MemberStart { get; set; }
public short? MemberEnd { get; set; }
}
}
控制器
var Projects = from a in db.Project
select a;
var Data = from a in db.Member
where a.Person.PersonId.Equals(Id)
select new MyProjectCustomObject
{
ProjectId = a.Project.ProjectId,
ProjectCustomer = a.Project.Customer,
ProjectName = a.Project.Name,
ProjectTechProfile = a.Project.TechProfile.Select(x => new TechProfile()
{
TechProfileId = x.TechProfileId,
Name = x.Name,
Elements = x.Elements
}),
MemberId = a.MemberId,
MemberRole = a.Role,
MemberStart = a.Start,
MemberEnd = a.End
};
var MyViewModel = new MyProjectViewModel();
MyViewModel.Project = Projects;
MyViewModel.Data = Data;
//return ViewModel to View.
return View(MyViewModel);
【问题讨论】:
-
这是实体框架而不是 MVC 的错误。 [StackOverflow: 无法在 LINQ to Entities 查询中构造实体][1] [1]:stackoverflow.com/questions/5325797/…
标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 model-view-controller