ASP.NET MVC中使用窗体验证出现上下文的模型在数据库创建后发生更改,导致调试失败(一)
在ASP.NET MVC中使用窗体验证。(首先要明白,验证逻辑是应该加在Model、View和Controller哪一个里面?由于Model的责任就是负责信息访问与商业逻辑验证的,所以我们把验证逻辑加在Model里面。)
第一步:引用下面这个命名空间
第二步:添加验证
第三步:启动调试,出现以下问题:
解决方法:
超链接中包含了解决这个问题的详细介绍,也就是通过Code First数据库迁移的方式让Entity Framework帮助我们自动调整数据库里面的架构。
解决这个问题最简单的方法就是将整个数据库砍掉重建(注意:这里这样设置会使数据库里面的数据全部丢失,在生产环境中千万不要启动一下参数)
第一步:在Model目录下找到数据库上下文类:MvcGuestbookContext.cs(我的项目的数据上下文类,找到自己对应的即可)复制这段代码:
System.Data.Entity.Database.SetInitializer(new System.Data.Entity.DropCreateDatabaseIfModelChanges<MvcGuestbook.Models.MvcGuestbookContext>());
第二步:打开Global.asax文档,并在Application_Start方法的最上方添加第一步中复制的代码,保存,启动调试,问题已经解决了。