首页 新闻 会员 周边

DataDirectory路径问题

0
[已解决问题] 解决于 2017-12-02 13:23

C#处理SQL Server数据库。

数据库文件.mdf放在bin同级目录的data文件夹下,例如: E:\Program1\Program1\data\test.mdf

连接数据库:

string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings[databasename].ConnectionString;
SqlConnection dbCn = new SqlConnection(connectionString);
dbCn.Open();

App.cofig设置:

复制代码
<configuration>
  <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
  <connectionStrings>
    <add name="test" 
      connectionString="Data Source=(LocalDb)\v11.0;
                Initial Catalog=test;
                Integrated Security=SSPI;
                AttachDBFilename=|DataDirectory|\data\test.mdf" 
      providerName="System.Data.SqlClient" />
  </connectionStrings>
</configuration>
复制代码

问题,有时候代码可以正常运行,有时候连接数据库出错,不能找到mdf文件。原因是有时候附加数据库的路径会变成E:\Program1\Program1\bin\Debug\data\test.mdf

Stack Overflow上有人说,Visual Studio debugger 使用debug 文件夹(http://stackoverflow.com/questions/12266924/how-do-i-read-the-current-path-of-datadirectory-from-config-settings)

但是我确实大部分程序可以正常运行,只是个别程序出错,求解析一下。谢谢!

Larryzhi的主页 Larryzhi | 初学一级 | 园豆:161
提问于:2017-01-16 22:24
< >
分享
最佳答案
0

已解决。

Mark一下,可以运行的是输出路径bin\Debug\更改为了.\

 

Larryzhi | 初学一级 |园豆:161 | 2017-01-17 12:04
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册