wix安装程序中web.config的多个更改

时间:2017-04-17 09:15:29

标签: xml wix windows-installer

我正在研究wix安装程序,并希望在我的Web应用程序的web.config文件中修改连接字符串和一些appsetting。 我正在使用util:XmlFile进行修改。 但是当我运行安装程序时,修改仅应用于连接字符串。

<Property Id="DB_USER" Value="sa"/>
<Property Id="DB_PASSWORD" Value="sa"/>
<Property Id="DB_SERVER" Value="LOCAL"/>
<Property Id="DB_DATABASE" Value="MailboxMigration_DB"/>

<Property Id="SMTP_port" />
<Property Id="SMTP_server" />
<Property Id="Email_Address" />
<Property Id="Email_Pass" />

之后我在对话框中设置属性。 在修改组件中,我正在应用更改。

<util:XmlFile Id="ModifyConnectionString"
                     Action="setValue"
                     Permanent="no"
                     ElementPath="/configuration/connectionStrings/add[\[]@name='MigratorDB'[\]]"
                     Name="connectionString"
                     File="[INSTALLFOLDER]web.config"
                     Value='Data Source=[DB_SERVER]; Initial Catalog=[DB_DATABASE]; User Id=[MMDB_USER]; Password=[MMDB_PASSWORD];'
                     SelectionLanguage="XSLPattern"
                     Sequence="1" />
<util:XmlFile Id="Server"
                     Action="setValue"
                     Permanent="no"
                     ElementPath="/configuration/appSettings/add[\[]@key='SMTPserver'[\]]"
                     Name="value"
                     File="[INSTALLFOLDER]web.config"
                     Value='[SMTP_server]'
                     SelectionLanguage="XSLPattern"
                     Sequence="2" />

与剩余的3个值相同。 但只对'connectionstring tag'进行修改 结果是web.config是。

<connectionStrings>
<add name="MigratorDB" providerName="System.Data.SqlClient" connectionString="Data Source=Arslan; Initial Catalog=MailboxMigration_DB6; User Id=abc6; Password=abc;"/></connectionStrings>


<appSettings>
<add key="SMTPport" value=""/>
<add key="SMTPserver" value=""/>
<add key="EmailAddress" value=""/>
<add key="EmailPass" value=""/>

0 个答案:

没有答案