在LINQ to Entities查询中使用Include()
在LINQ to Entities查询中使用Include()
我在我的ASP.NET MVC 3项目中有以下模型:
public class Task { public int Id { get; set; } public DateTime CreatedOn { get; set; } public TaskStatus Status { get; set; } } public class TaskStatus { public int Id { get; set; } public string Description { get; set; } }
作为参考,这是我的DbContext类:
public class TaskManagerSets : DbContext { public DbSetTaskSet { get; set; } public DbSet TaskStatusSet { get; set; } }
然后,在我的TaskController中有一个List Action:
TaskManagerSets dbcontext = new TaskManagerSets(); public ActionResult List() { var tasks = from tsk in dbcontext.TaskSet.Include("TaskStatusSet") select tsk; return View(tasks.ToList()); }
最后,我有一个Task List View:
@model IEnumerable
- @tsk.Id | @tsk.CreatedOn | @tsk.Status.Description
@foreach (var tsk in Model)
{
}
当我执行我的项目时,我得到以下错误:
指定的Include路径无效。EntityType 'CodeFirstNamespace.Task'没有声明名称为'TaskStatus'的导航属性。
问题肯定出在`Include("TaskStatusSet")`上,但我应该如何修复这个问题呢?