为视图模型创建视图时出现“No Key Defined”错误消息

时间:2016-04-01 23:29:21

标签: asp.net-mvc-5

目前我正在创建一个关于“MVC音乐商店”教程的项目,在为“ShoppingCartViewModel”创建视图时,它总是显示错误,告诉我没有键定义。 错误消息是:实体类型'ShoppingCartViewModel'没有定义键....

以下是教程中的原始代码:

namespace MyMVStore.ViewModels
{
     public class ShoppingCartViewModel
    {

       public List<Cart> CartItems { get; set; }
       public decimal? CartTotal { get; set; }
   }
}

以下是我更新的内容:

//[NotMapping]
namespace MyMVStore.ViewModels
{
     public class ShoppingCartViewModel
    {
       [Key] //my code
       public int Id { get; set; } // my code
       public List<Cart> CartItems { get; set; }
       public decimal? CartTotal { get; set; }
   }
}

我将[Key]和Id放到模型中,似乎无法正常工作。我也尝试添加[Notmapping],它也不起作用。当我尝试为此模型创建视图时,错误按摩仍然显示。

2 个答案:

答案 0 :(得分:1)

您需要做的就是从下拉列表中删除$age类。这是一个可编辑的下拉菜单,因此您只需突出显示并删除它即可 这样做之后就可以了。

答案 1 :(得分:0)

您很可能已在与EF关联的上下文类中声明了DbSet。删除声明使其成为非表模型。