首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带EF的MVc误差

带EF的MVc误差
EN

Stack Overflow用户
提问于 2013-08-24 12:03:38
回答 1查看 133关注 0票数 0

我创建了一个与EF没有任何关系的模型。当我在上下文中添加它并运行app for create数据库时,我在Application-start中出现了一个错误:

在模型生成期间检测到一个或多个验证错误: System.Data.Edm.EdmEntityType::EntityType 'UrlHelper‘没有定义键。定义此EntityType的键。System.Data.Edm.EdmEntityType::EntityType 'RequestContext‘没有定义键。定义此EntityType的键。System.Data.Edm.EdmEntityType::EntityType 'HttpContextBase‘没有定义键。定义此EntityType的键。System.Data.Edm.EdmEntityType::EntityType 'Exception‘没有定义键。定义此EntityType的键。System.Data.Edm.EdmEntityType::EntityType 'Type‘没有定义键。定义此EntityType.的键。

global.asax中的代码如下所示:

代码语言:javascript
复制
    public class MyInitializer
: DropCreateDatabaseIfModelChanges<DBTa>
    {
    }
    protected void Application_Start()
    {
        //for creating and initializing database 
        System.Data.Entity.Database.SetInitializer(new MyInitializer());
        **DBTa db = new DBTa();**//Error shows here
        db.Database.Initialize(true);
        //

        AreaRegistration.RegisterAllAreas();

        RegisterGlobalFilters(GlobalFilters.Filters);
        RegisterRoutes(RouteTable.Routes);
    }

但是当我从应用程序中删除模型时,我的问题解决了,但是我需要这个模型。

请帮忙,非常感谢

EN

回答 1

Stack Overflow用户

发布于 2013-08-24 12:35:20

您应该在'UrlHelper'模型中设置"key“属性。如果首先在模型中使用EF代码,则应该将属性[Key]添加到其属性之一。如果您使用模型第一方法--在您的模型中,您应该将其中一个属性标记为主键。如果您使用数据库优先方法-您应该在表中创建主键。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18418366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档