我创建了一个新的MVC 4项目,Build and Run - >全部成功
尝试登录 - >在SQL Express中创建新数据库(数据库名称:xyz)=>到目前为止一切都很好......
现在,我想在SQL Express中添加一个名为“ABCD”的新表(到xyz数据库之上)。如何在Visual Studio解决方案中访问此表?没有实体框架模型可以手动更新它?
但是,我在Models文件夹
中添加了一个名为ABCD
的类
使用新的Data Context Class
为ABCD创建了一个新的控制器,但是当我运行解决方案时,它创建了一个新的数据库而不是使用Web.config文件中提到的默认数据库
有人可以告诉我如何通过详细步骤解决此问题?
使用System.Data.Entity;
namespace _1024.Models { public class _1024Context:DbContext { //您可以将自定义代码添加到此文件中。更改不会被覆盖。 // //如果您希望Entity Framework删除并重新生成数据库 //每当您更改模型架构时自动添加以下内容 //代码到Global.asax文件中的Application_Start方法。 //注意:这会在每次模型更改时销毁并重新创建数据库。 // // System.Data.Entity.Database.SetInitializer(new System.Data.Entity.DropCreateDatabaseIfModelChanges< _1024.Models._1024Context>());
public _1024Context() : base("name=_1024Context")
{
}
public DbSet<ABCD> ABCDs { get; set; }
}
}
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=aspnet-_1024-20130606134952;Integrated Security=SSPI"
providerName="System.Data.SqlClient" />
<add name="_1024Context" connectionString="Data Source=.\SQLEXPRESS; Initial Catalog=_1024Context-20130606135301; Integrated Security=True; MultipleActiveResultSets=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
答案 0 :(得分:0)
如果要使用现有数据库,则不应使用新连接字符串。在连接字符串中,您有两个不同的初始目录,这意味着两个不同的数据库。
答案 1 :(得分:0)
首先尝试不使用“name =”这样写。这对我有用。
public _1024Context() : base("_1024Context")