MVC 4创建一个新数据库,而不是使用web.config文件中指定的数据库

时间:2013-06-06 01:02:04

标签: asp.net-mvc-4

我创建了一个新的MVC 4项目,Build and Run - >全部成功

尝试登录 - >在SQL Express中创建新数据库(数据库名称:xyz)=>到目前为止一切都很好......

现在,我想在SQL Express中添加一个名为“ABCD”的新表(到xyz数据库之上)。如何在Visual Studio解决方案中访问此表?没有实体框架模型可以手动更新它?

但是,我在Models文件夹

中添加了一个名为ABCD的类

使用新的Data Context Class为ABCD创建了一个新的控制器,但是当我运行解决方案时,它创建了一个新的数据库而不是使用Web.config文件中提到的默认数据库

有人可以告诉我如何通过详细步骤解决此问题?

这是我的DataContext类:

使用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; }
}

}

这是Web.config文件:

<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>

2 个答案:

答案 0 :(得分:0)

如果要使用现有数据库,则不应使用新连接字符串。在连接字符串中,您有两个不同的初始目录,这意味着两个不同的数据库。

答案 1 :(得分:0)

首先尝试不使用“name =”这样写。这对我有用。

public _1024Context() : base("_1024Context")