【发布时间】:2017-02-25 01:30:48
【问题描述】:
我正在开发一个 C# windows 窗体应用程序,其中包含基于服务的数据。当我测试我的应用程序时,它的数据库工作正常,但是在程序尝试打开 sqlconnection 时发布和安装程序后,出现此错误:
System.Data.SqlClient.SqlException (0x80131904):尝试附加 文件的自动命名数据库 C:\Users\Behnam\AppData\Local\Apps\2.0\Data\5XVOVXV1.3VG\M5T04ZK7.QBJ\tahl..tion_45c3791d6509222d_0001.0000_be1c7cc05811ecf0\Data\AppData\TahlilGar.mdf 失败的。存在同名数据库,或指定文件不能 被打开,或者它位于 UNC 共享上。
这是我的连接字符串:
<add name="BA" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\AppData\TahlilGar.mdf;
Integrated Security=True;"providerName="System.Data.SqlClient" />
我也试过:User Instance= True;,但结果是:
连接用户时不允许用户实例登录标志 SQL Server 实例。连接将被关闭。
我该如何解决这个问题?
编辑: 我检查了提到的路径,没有我的 .mdf 文件。所以我从我的项目中复制了它,之后它工作得很好。 现在为什么在预期路径中发布和安装时我的 mdf 文件没有复制。
【问题讨论】:
-
您是否选择在要发布到的服务器上使用 LocalDB?是不同的机器吗?我认为您至少会在服务器上使用 SQL Express。 LocalDB 用于开发。
-
我在开发程序的同一台机器上安装已发布的应用程序?我也在另一台机器上测试过,我又得到了同样的错误。
-
此链接msdn.microsoft.com/en-us/library/kzy0fky2.aspx 包含有关包含和排除用于单击发布的文件的详细信息
-
@Kira -- 这是正确答案。请提供您的答案以赚取赏金。
标签: c# connection-string app-config sqlconnection local-database