【发布时间】:2017-06-14 18:18:00
【问题描述】:
控制器
public JsonResult menulist()
{
try
{
if (Session["User_Type"].ToString() != null)
{
var menu = db.menuitems.ToList().Where(d => d.HasAccess.Contains(Session["User_Type"].ToString())).OrderBy(d=>d.Name);
return new JsonResult { Data = menu, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
}
return new JsonResult { Data = "", JsonRequestBehavior = JsonRequestBehavior.AllowGet };
}
catch (Exception ex)
{
return new JsonResult { Data = "", JsonRequestBehavior = JsonRequestBehavior.AllowGet };
}
}
型号
public class MenuItem
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Key]
public int MenuItemId { get; set; }
public string Name { get; set; }
public string ActionName { get; set; }
public string ControllerName { get; set; }
public string Url { get; set; }
public bool Disable { get; set; }
public string HasAccess { get; set; }
public int ParentMenuId { get; set; }
}
上下文
public DbSet<MenuItem> menuitems { get; set; }
我在我的数据库中自动生成了MenuItemId 字段,所以我在我的模型中将它定义为键和身份。我仍然收到Key not defined 的错误,并且“SelectListItem”没有定义键。
错误
在模型生成过程中检测到一个或多个验证错误: Demo.Context.SelectListItem: : EntityType 'SelectListItem' 没有定义键。定义此 EntityType 的键。 SelectListItems: EntityType: EntitySet 'SelectListItems' 基于没有定义键的类型 'SelectListItem'。
【问题讨论】:
-
你发现了吗?
标签: c# asp.net-mvc razor