0

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

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

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

我应该这样做吗?任何小贴士都很棒。。。谢谢

  • 那么你是先使用代码还是edmx? 2013年9月24日17:33
  • 在代码优先的情况下,应该将属性添加到模型中,而不是首先添加到数据库中。 2013年9月24日17:33
  • @丹尼尔。白色,我先用db。 2013年9月24日17:34

3个答案

重置为默认值
1

有几个选项可以执行:

  1. 如果数据库是空的或者您关心的数据不多,您可以删除数据库并重新创建它。
  2. 在数据库中手动添加列(在属性位于模型中之后)
  3. 有一种称为代码优先迁移的方法。这将允许您更新数据库。以下是您可以查看的教程:http://msdn.microsoft.com/en-us/data/jj591621.aspx
1

双击edmx文件。这将打开数据库模型的关系图。右键单击并选择“从数据库更新模型…”这将启动您要查找的向导。

请注意,并非所有更改都是自动完成的。
最明显的是,列不会仅仅因为从数据库中删除就从模型中删除。如果您正在处理大量修改或删除,而不是添加,那么最好删除模型并重新创建它(正如Andrew所建议的那样)。
无论您采用哪种方法,我建议您在开始之前确保所有其他本地源代码更改都已提交或搁置,因为如果EF被吓坏了,您可能需要执行撤消检查。

1
  • 我回答了我自己的问题,我必须修补我的VS 2012 2013年9月24日19:40
1

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

你的答案

单击“发布您的答案”,表示您同意我们的服务条款并确认您已阅读我们的隐私政策.

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.