2011-10-03 105 views
0

我有一个应用程序,当前使用一个表的数据库。我想添加另一列到表中。根据这篇文章(http://www.asp.net/mvc/tutorials/getting-started-with-mvc3-part7-cs),有两种方法可以修改数据库:1.让EF删除并重新创建数据库或2.明确修改数据库。不幸的是,他们通过第一种方法。更新数据库 - MVC3,实体框架4.1

如果我有一个名为Team的表,那么执行第二种方法的正确/最简单的方法是什么?

我有的列是TeamID,TeamAbbreviation,TeamCity,TeamName和TeamDisplayName。我想添加TeamSmallLogoUrl。

回答

0

要做第二种方法,只需要修改数据库并添加列。然后打开VS中的EDMX文件(在解决方案资源管理器中双击它),并在打开它时右键单击它,然后从上下文菜单中选择“从数据库更新模型”。点击完成。它会提取你添加的列。

0

假设你使用代码优先(因此EF-4.1题):

如果您仍处于发展阶段,有数据库中没有重要数据,使用下拉重新创建方法。 (这也是最简单的方法)。

如果您在数据库中有一些数据,只需手动执行此操作。属性和类的名称应该直接匹配/映射到您的数据库模式。 (如果没有映射,EF将会抛出错误)

+0

所以如果我的班级是Team.cs并且是这样的: public class Team { public int TeamID {get;组; } public string TeamAbbreviation {get;组; } public string TeamCity {get;组; } public string TeamName {get;组; } public string TeamDisplayName {get;组; } public string TeamSmallLogoUrl {get;组; } } 我在VS 2010的服务器资源管理器中手动添加了表列,然后在其中放入了一些字符串数据。我重建了解决方案,但仍然出现错误:自创建数据库以来,模型支持...上下文已更改... –