【发布时间】:2011-04-13 11:07:23
【问题描述】:
我的 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 DbSet<Task> TaskSet { get; set; }
public DbSet<TaskStatus> TaskStatusSet { get; set; }
}
然后我的 TaskController 中有一个 List 操作:
TaskManagerSets dbcontext = new TaskManagerSets();
public ActionResult List()
{
var tasks = from tsk in dbcontext.TaskSet.Include("TaskStatusSet")
select tsk;
return View(tasks.ToList());
}
我终于有了任务列表视图:
@model IEnumerable<TaskManager.Models.Task>
<ul>
@foreach (var tsk in Model)
{
<li>@tsk.Id | @tsk.CreatedOn | @tsk.Status.Description</li>
}
</ul>
当我执行我的项目时,我收到以下错误:
指定的包含路径无效。 EntityType 'CodeFirstNamespace.Task' 没有声明名为 'TaskStatus' 的导航属性。
问题肯定出在Include("TaskStatusSet"),但我应该如何解决这个问题?
【问题讨论】:
标签: c# .net asp.net-mvc-3 entity-framework-4 linq-to-entities