构建一个不使用iis部署中的值的webdeploy项目

本文关键字:iis 部署 项目 webdeploy 一个 构建 | 更新日期: 2023-09-27 18:01:37

显然我不理解appdeploy的连接。pubxml文件。

我想在我的网站上有一个这样的连接字符串。配置文件:

<add name="TestDB" connectionString="Server=.'SQLExpress;User ID=WebUser;Password=[pass];Initial Catalog=TestDB" providerName="System.Data.EntityClient" />

在我的appdeploy。pubxml文件如下:

<PublishDatabaseSettings>
  <Objects xmlns="">
    <ObjectGroup Name="TestDB" Order="1" Enabled="False">
      <Destination Path="Data Source=.'SQLExpress;Initial Catalog=TestDB;User ID=WebUser;Password=[Pass];Application Name=EntityFramework" Name="Data Source=.'SQLExpress;Initial Catalog=TestDB;User ID=WebUser;Password=[pass];MultipleActiveResultSets=True;Application Name=EntityFramework" />
    </ObjectGroup>
  </Objects>
</PublishDatabaseSettings>
<ItemGroup>
<MSDeployParameterValue Include="$(DeployParameterPrefix)TestDB-Web.config Connection String">
  <ParameterValue>Data Source=.'SQLExpress;Initial Catalog=TestDB;User ID=WebUser;Password=[Pass];Application Name=EntityFramework</ParameterValue>
</MSDeployParameterValue>
</ItemGroup>

当我发布应用程序时,将其复制到测试iis服务器并导入它,我得到对话框以输入信息和文本框中的is。但是,web中的连接字符串。web服务器上的配置被重写为:

    <add name="TestDB" connectionString="Server=[YourDbServerAddress];User ID=[YourDbLogin];Password=[YourDbPassword];Initial Catalog=[YourDbName]" providerName="System.Data.EntityClient" />

所以它就像信息项不匹配我在appdeploy中的配置。Pubxml,这样它就不会被传递。我做错了什么?

我可以使用已经存在的,或者如果它不存在,使用"默认"?

构建一个不使用iis部署中的值的webdeploy项目

答案在web.release.config转换文件中。这就是配置web中的行。配置文件。在安装站点时,appdeploy似乎控制了菜单选项。