首先更新MVC数据库以反映数据库更改

时间:2013-09-24 17:30:12

标签: c# sql-server-2008 entity-framework asp.net-mvc-4 ef-database-first

我是MVC的新手,必须更新我的模型。

我的SQL Server数据库已经连接到我的项目,今天我添加了一个新列。现在我需要更新我的MVC代码以反映更改。

在线的所有内容都告诉我使用更新模型向导更新.edmx和.tt文件,因为它们是自动生成的,但我在VS 2012中找不到向导,所以我处于静止状态。

这是我应该这样做的正确方法吗?任何提示都会很棒...谢谢

3 个答案:

答案 0 :(得分:1)

您可以选择几种方式:

  1. 如果数据库为空或者您不关心大量数据,则可以删除数据库并重新创建数据库。
  2. 手动添加数据库中的列(属性在模型之后)
  3. 有一种叫做Code First Migrations的东西。这将允许您更新数据库。以下是您可以查看的教程:http://msdn.microsoft.com/en-us/data/jj591621.aspx

答案 1 :(得分:1)

双击edmx文件。这将打开数据库模型的图表。 右键单击并选择“从数据库更新模型...” 这将启动你正在寻找的向导。

请注意,并非所有更改都会自动完成 最明显的是,列不会因为它们从数据库中消失而从模型中删除。如果您正在处理大量修改或删除而不是添加,最好放弃模型并重新创建它(如上面安德鲁所建议的那样)。
无论你采取哪种方法,我都建议你确保在开始之前已经承诺或搁置了所有其他本地源更改,因为如果EF被吓坏了,你可能需要撤销检查。

答案 2 :(得分:1)

我最终下载了VS 2012的this更新并修复了。现在我可以更新我的模型。