Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在另一台计算机上部署应用程序_C#_Visual Studio_App Config - Fatal编程技术网

C# 在另一台计算机上部署应用程序

C# 在另一台计算机上部署应用程序,c#,visual-studio,app-config,C#,Visual Studio,App Config,我开发了一个简单的winforms应用程序,带有一个基于服务的数据库 在我的机器上运行应用程序时,它工作正常。但在发布应用程序并将其放在另一台机器上之后,它会正常安装和运行,但当连接到数据库时,它会抛出一个错误 “试图为文件附加自动命名数据库” 使用以下连接字符串: <connectionStrings> <add name="MyConString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFile

我开发了一个简单的winforms应用程序,带有一个基于服务的数据库

在我的机器上运行应用程序时,它工作正常。但在发布应用程序并将其放在另一台机器上之后,它会正常安装和运行,但当连接到数据库时,它会抛出一个错误

“试图为文件附加自动命名数据库”

使用以下连接字符串:

<connectionStrings>
        <add name="MyConString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\myDB.mdf;Integrated Security=True;User Instance=True"
            providerName="System.Data.SqlClient" />
    </connectionStrings> 
static string constr = System.Configuration.ConfigurationManager.ConnectionStrings["MyConString"].ConnectionString;
        static SqlConnection conn = new SqlConnection(constr);
正在目标计算机上安装SQL server

我错过什么了吗

数据源=。\SQLEXPRESS 此处的“.”表示本地计算机上的Sql server数据库。 如果将此应用程序部署到另一台计算机,
您必须将“.”更改为您的本地计算机IP地址(假定它们位于同一本地网络中)。

您应该在数据库存在的位置更改数据源名称。“表示它存在于本地计算机上。”。如果您不想更改数据源名称,则应将数据库放在同一系统上。

下面的链接是通过创建设置来部署应用程序的分步教程:


我怀疑这是您收到的实际错误消息(“尝试”?)。另一台计算机是否具有相同的
| DataDirectory |
,并且该文件夹中是否有名为
myDB.mdf
的文件?@KenWhite是,错误如前所述,是,发布时im包括数据库。。但是我没有得到| DataDirectory |部分我如何才能使它变为变量。。Cz我想它停在哪里了..应用程序找不到db路径..MS实际上发布了一个写着“尝试”的东西?他们的QC变得很差;您可能应该提交一份关于这种草率的bug报告。(如果输入错误不存在,它不是您收到的实际消息,(我的观点)。)DataDirectory将是您安装DB副本的位置,您可以在连接字符串或应用程序的配置文件中声明。显然,如果您试图打开
C:\MyAppDir\MyDB.MDF
,则
MyDB.MDF
文件必须位于目标计算机上的
C:\MyAppDir
中,如果不是,则必须从适当的文件夹打开它。