asp.net - ASP.NET 可以让 Entity Framework 代码首先创建一个除LocalDB之外的SQL Server Express 数据库?

  显示原文与译文双语对照的内容
98 4

在 Visual Studio 2013中,我创建了一个带有 ASP.NET 标识的ASP. NET MVC网络项目。

而 Entity Framework 代码首先创建了 SQL Server Express LocalDB数据库,

默认情况下APP_Data文件夹。

但是我更喜欢 SQL Server Express 数据库,因为在本地IIS中托管web应用程序时 SQL Server Express LocalDB无法使用 IIS 。

所以我的问题是

如果我首先创建一个新的项目,如果我先创建一个新的项目,我怎么才能创建 SQL Server Express 数据库?

安装 SQL Server Express 后,我已经替换了"( LocalDB ) v11.0"带"。sqlexpress"in"工具- 选项- 数据工具- 数据连接- 实例名称"VS2013"。但他们不适合我。

假设现在我们必须使用 SQL Server Express Identity,我想在完成开发和部署应用程序时,是否将LocalDB数据库转换为或者 SQL Server db 。

先 谢谢 你 了.

时间:原作者:0个回答

123 5

在代码的第一个 DbContext 类中指定连接字符串名称,如下所示:

public class MyDbContext : DbContext
{
 public MyDbContext(): base("name=connectionString")
 {
 }
 public DbSet<User> Users { get; set; }
 public DbSet<Order> Orders { get; set; }
}

然后在 Web.Config 文件内指定连接字符串,指向你所希望的SQL Server 版本:

 <connectionStrings>
 <add name="connectionString" connectionString="Password=password;Persist Security Info=True;User ID=sa;Initial Catalog=DatabaseName;Data Source=ServerName"
 providerName="System.Data.SqlClient"/>
 </connectionStrings>
原作者:
149 4

经过多次尝试,我自己找到了答案,想在这里分享。

只需修改"( LocalDB ) v11.0"到"。sql express"在windows中生成数据库命令时( 在NuGet控制台或者在 vs 中运行你的web应用程序) 时,为DefaultConnection中的值提供足够的权限,以便获得上下文登录 id ) 。

你可以将LocalDB文件附加到 SQL Server Express 实例。

希望对某人有帮助。

原作者:
...