繁体   English   中英

.NET ASP.NET MVC4模型中的更改

[英]Changes in Model .NET asp.net MVC4

我已经按照以下步骤创建了一个项目

创建模型; 从模型和脚手架视图创建控制器;

我试图访问它,并且工作正常,但是我在Model重建中进行了一些更改,并尝试再运行一次,现在出现了此错误:

{“自创建数据库以来,支持'CodingContext'上下文的模型已更改。请考虑使用“代码优先迁移”来更新数据库( http://go.microsoft.com/fwlink/?LinkId=238269 )。“}

此错误带来了一个空的内部异常

这是堆栈:

在System.Data.Entity.CreateDatabaseIfNotExists处1.InitializeDatabase(TContext context) at System.Data.Entity.Internal.InternalContext.<>c__DisplayClass8.<PerformDatabaseInitialization>b__6() at System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action) at System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization() at System.Data.Entity.Internal.LazyInternalContext.<InitializeDatabase>b__4(InternalContext c) at System.Data.Entity.Internal.RetryAction 1.PerformAction(TInput输入)在System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(动作1 action) at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabase() at System.Data.Entity.Internal.InternalContext.Initialize() at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType) at System.Data.Entity.Internal.Linq.InternalSet 1.System.Data.Entity.Internal.Linq.InternalSet 1.GetEnumerator()中的1.GetEnumerator() at System.Data.Entity.Infrastructure.DbQuery 1.GetEnumerator() at System.Data.Entity.Infrastructure.DbQuery 1.System.Collections.Generic.IEnumerable.GetEnumerator()at System.Collections.Generic.List 1..ctor(IEnumerable 1 collection)at System.Linq.Enumerable.ToList [TSource](IEnumerable 1 source) at Coding.Controllers.CorController.Index() in c:\\Users\\Guilherme\\Documents\\Visual Studio 2012\\Projects\\Coding\\Coding\\Controllers\\CorController.cs:line 19 at lambda_method(Closure , ControllerBase , Object[] ) at System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase controller, Object[] parameters) at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary 2参数)在System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext,ActionDescriptor System.Web.Mvc.Async.AsyncControllerActionInvoker.InvokeSynchronousActionMethod上的actionDescriptor,IDictionary 2 parameters) at System.Web.Mvc.Async.AsyncControllerActionInvoker.InvokeSynchronousActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary 2参数) yncControllerActionInvoker。<> c_ DisplayClass42.b _41()在System.Web.Mvc.Async.AsyncResultWrapper。<> c_ DisplayClass8 1.<BeginSynchronous>b__7(IAsyncResult _) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult 1。 System.Web.Mvc.Async.AsyncResultWrapper.End [TResult](System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult),System.Web.Mvc.Async的End [TResult](IAsyncResult asyncResult,Object标记)。 AsyncControllerActionInvoker。<> c _DisplayClass37。<> c_ DisplayClass39.b _33()at System.Web.Mvc.Async.AsyncControllerActionInvoker。<> c_ DisplayClass4f.b _49()

我认为问题在于使用此新模型刷新数据库,但是我找不到解决该问题的任何命令。

提前致谢!

如果有人遇到相同的问题,那么我在一些朋友的帮助下得到了这个答案,您必须按照以下步骤更新数据库:

打开软件包管理器控制台:工具–>库软件包管理器–>软件包管理器控制台

安装实体框架: 安装包EntityFramework

运行: 启用迁移

在这一点上我遇到了问题,但是Visual Studio向我展示了答案,这仅仅是多个上下文的问题

运行: 添加迁移

然后: 更新数据库

完成后,您模型中的每个更改都需要运行这些命令!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM