Asp.net mvc 关于在ASP.NET MVC中在代码优先的后期阶段更改模型

Asp.net mvc 关于在ASP.NET MVC中在代码优先的后期阶段更改模型,asp.net-mvc,entity-framework,asp.net-mvc-4,ef-code-first,Asp.net Mvc,Entity Framework,Asp.net Mvc 4,Ef Code First,我正在学习ASP.NETMVC的基础知识。我为一个页面创建了一个模型视图控制器。在我的项目中,我有讲师表和课程表。一旦我运行了这个项目,一切似乎都很顺利。但是后来我想编辑这个模型;如在courses.cs文件中的讲师表中添加一个字段。当我这么做的时候,一个异常开始出现,说明了一些上下文变化和迁移问题 错误消息: the context has changed since the database was created. Consider using Code First Migrations

我正在学习ASP.NETMVC的基础知识。我为一个页面创建了一个模型视图控制器。在我的项目中,我有讲师表课程表。一旦我运行了这个项目,一切似乎都很顺利。但是后来我想编辑这个模型;如在courses.cs文件中的讲师表中添加一个字段。当我这么做的时候,一个异常开始出现,说明了一些上下文变化和迁移问题

错误消息:

the context has changed since the database was created. Consider using Code First Migrations to update the database
我发现我需要添加Database.SetInitializer(null)
在global.asax文件中。即使做了那个改变,我仍然被同样的错误卡住了。我的问题是,我正在courses.cs文件中添加一个字段,方法是写入公共字符串地址{get;set;}。是否还需要在视图中手动添加相应的代码。在初始解决方案期间,视图自动创建,其中包含表列(原始)。但是由于我在courses.cs文件的讲师表中添加了一个额外的列。我是否需要在“indexcs.html”文件中相应的视图中手动添加该特定字段?如果没有,那么为什么我仍然得到错误。如果是,则我必须手动打开与courses.cs相关的所有视图,并开始手动进行更改。因为在课程视图中,我有很多.cshtml文件。我是否需要在所有位置添加与我相关的相应更改,添加一个额外字段,即,公共字符串地址{get;set;}。有没有什么自动的方法。就像我第一次制作控制器时VisualStudio所做的那样

您是如何从模型中生成数据库的?迁移是为了确保数据库与您的模型匹配,而与视图或.cshtml文件无关。此外,一般建议您在问题中包含实际的错误消息和代码片段;不这样做将很快为您赢得否决票或更糟的是,赢得接近票。我添加了错误消息。因为我添加了一行额外的代码公共字符串地址{get;set;}。我是否也必须手动更改视图。该错误进一步确认,您需要更新数据库以匹配您的模型。同样,这与你的观点无关。