0
控制器
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'没有定义键。模型生成过程中检测到EntitySet的 'SelectListItems' 是基于类型 'SelectListItem' 不具有键定义
错误
一个或多个验证错误: Demo.Context.SelectListItem:的EntityType 'SelectListItem' 不具有确定的键。定义此EntityType的关键字。 SelectListItems:EntityType:EntitySet'SelectListItems'基于没有定义键的类型'SelectListItem'。
它不工作。问题依然存在。其实m有问题相关的modelvalidation。解决我在模型中应用了键。但无法解决这个问题 – Priya
@Priya,你可以显示代码实际上你正在使用'SelectListItem'或者告诉哪个行异常被抛出? –
当我在控制器中与db进行通信时抛出异常。 'db.menuitems.ToList()'实际上是抛出异常 – Priya