如何更改连接字符串到相对路径的绝对路径?

时间:2014-09-30 21:56:56

标签: c# asp.net database visual-studio-2013 connection-string

<add name="movies_db.mdf" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=C:\Users\user\Documents\Visual Studio 2013\WebSites\Movies\App_Data\movies_db.mdf;Integrated Security=True"
     providerName="System.Data.SqlClient"/>

嗨,我在我的Web.config页面中添加了这个连接字符串,以连接到我的&#34; movies_db.mdf&#34;数据库。当我将鼠标指向&#34;服务器资源管理器&#34;中的数据库名称时,我从属性部分复制了整个路径。现在这已经在我的计算机上运行了,据我所知,连接字符串的路径称为绝对路径。如何将其更改为相对路径,以便它可以在另一台计算机上工作和连接?

我正在使用Visual Studio 2013并尝试创建一个与DB连接的网站。

2 个答案:

答案 0 :(得分:1)

按如下方式设置连接字符串:

<connectionStrings>
     <add name="movies_db.mdf" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename={%FileName%};Integrated Security=True"
     providerName="System.Data.SqlClient"/>
</connectionStrings>

然后在您的代码中使用连接字符串,如下所示:

ConfigurationManager.ConnectionStrings["movies_db.mdf"].ConnectionString.Replace("{%FileName%}",
Server.MapPath("~/App_Data/movies_db.mdf"));

答案 1 :(得分:-1)

试试这个。它适用于sql server数据库,但不知道是否适用于localdb

   <add name="con-string1" connectionString="Data Source=(LocalDB)\v11.0; Initial Catalog=movies_db;Integrated Security=True" providerName="System.Data.SqlClient"/>