我正在研究MVC应用程序,到目前为止我一直在使用localDB,因为它包含在本教程中。我想现在将应用程序切换到我的SQL Server,但我不知道如何。
我知道我必须更改连接字符串。但不是以什么方式确切,因为SQL Server具有我的localDB没有的用户名和密码。
关于这一点的另一个问题是,我是否必须在SQL Server的开头自己创建表,还是由实体框架生成,就像在我的localDB中一样?
localDB的当前连接字符串:
<add name="AcquisitionDBContext"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Acquisitions.mdf;Integrated Security=True" providerName="System.Data.SqlClient"/>
我是新手,所以非常感谢任何帮助
答案 0 :(得分:0)
如果您打算使用MS SQL,那么它将会是这样的:
<add name="AcquisitionDBContext" connectionString="Data Source=hostname\sql_instance_name;Initial Catalog=databaseName;Persist Security Info=True;User ID=username;Password=password;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
where&#34; hostname \ sql_instance_name&#34;是servername(或ip)/ sql实例名称,例如。本地主机\ SQLEXPRESS
答案 1 :(得分:0)
这里有connection string
的样子(根据您的需要进行调整)
<add name="DefaultConnection" connectionString="Data Source=server_name,port; Initial Catalog=your_catalogue_name; Integrated Security=False; User ID=userName;Password=Passwd; MultipleActiveResultSets=True" providerName="System.Data.SqlClient"/>
在第一次运行之前,我建议使用migrations
。
转到PackageManagerConsole
(如果您没有在菜单中找到它,请先通过NuGet
安装Extension and Updates
)
然后在控制台类型Enable-Migrations
内(如果你还没有)。
接下来输入Add-Migration your_migration_name
,然后输入Update-Database
,让migrations
为您创建表格。
如果您稍后更改模型文件中的某些内容,则可以再次键入Add-Migration your_migration_name
和Update-Database
以使用这些更改来更新数据库。
答案 2 :(得分:0)
ConnectionStrings.com是连接字符串语法的最佳参考。它显示了当您拥有用户名+密码时使用的选项。在这种情况下:
Server=myServerAddress; Database=myDataBase; User Id=myUsername; Password=myPassword;
实体框架不会为您创建表格,除非您通过调用以下内容告诉它:
Database.SetInitializer( new DropCreateDatabaseIfModelChanges<YourDbContextHere>() );
(Database
类型为System.Data.Entity.Database
)。
答案 3 :(得分:0)
试一试:
<connectionStrings>
<add name="<<Name of Connection String>>" connectionString="Data Source=<<Put here path to your SQL SErver>>;Initial Catalog=<<Database name>> ;Integrated Security=SSPI;Trusted_Connection=true;" providerName="System.Data.SqlClient" />
</connectionStrings>