2015-11-09 74 views
1

我新的ASP.NET MVC,我想学习的关键,但我有以下错误:ASP.NET MVC 5 - 的EntityType没有定义

"Unable to retrieve metadata for 'AEMOS.Models.Proyects'. One or more validation errors were detected during model generation:

Proyects: : EntityType 'Proyects' has no key defined. Define the key for this EntityType.

Proyects: EntityType: EntitySet 'Proyects' is based on type 'Proyects' that has no keys defined.

我已搜查谷歌这个错误,即使在这里在StackOverflow,但不能取得成功。

这是我的课:

using System; 
using System.ComponentModel.DataAnnotations; 
using System.Globalization; 

namespace AEMOS.Models 
{ 
    public class Proyects 
    { 
     [Key] 
     public int ProyectsId { get;set;} 
     public string Name { get; set; } 
     public int Year { get; set; } 
     public Boolean Active = false; 


    } 
} 

我选择MVC 5 Controller with views, using Entity Framework为控制器创建。在下一个窗口中,我选择了模型Proyects,数据上下文ApplicationDbContext和选定的布局。

我已经尝试了多个班级配置(没有[Key],键名为Id而不是ProyectsId,...)。

你知道最新情况吗?

+1

你编译的应用程序? – CodeCaster

+1

建立你的解决方案 –

+0

哦!多数民众赞成它,抱歉如果我是一个菜鸟,没有阅读任何关于编译。非常感谢大家。你可以发布作为回答标记为完成吗? –

回答

1

我很确定这已被回答之前,但我找不到重复。

基于实体框架实体类型生成控制器和视图的脚手架向导将查看您的二进制文件,而不是您的代码。

因此,在向导进行更改以选择这些更改(如添加Key属性)后,需要编译(构建)包含实体类型的程序集。

+0

Thansk的帮助和进一步的解释@codecaster –

相关问题