作爲我的WiX安裝的一部分,我將所有已轉換/已編譯的web.config文件複製到安裝目錄。已編譯的web.config的名稱格式爲web。{ENV} .config。在我的安裝UI中,我創建了一個自定義對話框,在該對話框中解析ENV並填充組合框,以便用戶可以選擇我們部署到的環境。此組合框設置屬性ENV。WiX - 將基於環境的已編譯的web.config複製到網站根目錄
我需要了解如何使用此屬性將安裝的配置文件複製到網站根目錄。
更新:@Rob_Mensching - 您的解決方案在編譯時工作,但是,在編譯時,WiX迫使我爲每個這樣的組件創建一個GUID。有沒有辦法可以避免它?事情是我要通過在我的wxs文件上運行XSLT來生成這段代碼,該文件使用熱生成;有沒有辦法,我可以使用XSLT生成GUID
這是我的代碼現在的樣子(或可以嗎?):
<ComponentGroup Id='web.config' Directory='CONFIGLOCATION'>
<Component Id='CopyWebConfigForDev1' Guid='{F207C26A-5D9C-4F19-96A3-D818BB226EFC}' >
<Condition>ENV="Dev1"</Condition>
<CopyFile Id='CopyDev1Config' FileId='fil9C4CFE42035F1A63180142352CF441BC' DestinationDirectory='CONFIGLOCATION' DestinationName='web.config'/>
</Component>
<Component Id='CopyWebConfigForQA1' Guid='{F207C26A-5D9C-4F19-96A3-D818BB226EFC}' >
<Condition>ENV="QA1"</Condition>
<CopyFile Id='CopyQA1Config' FileId='fil12F8B50F03F1BD91A579F6B6CE7195DF' DestinationDirectory='CONFIGLOCATION' DestinationName='web.config'/>
</Component>
</ComponentGroup>
我不知道我是否正確地構建了我的問題,但是您提供的解決方案實際上會將該環境的web.config文件安裝到我的安裝位置,例如INSTALLLOCATION/configs文件夾。 但我實際上希望我所有的web.configs都去INSTALLLOCATION/configs文件夾位置,然後根據我選擇的環境,然後安裝程序應該將環境的web.config從INSTALLLOCATION/configs文件夾複製到INSTALLLOCATION。 – vaibinewbee 2013-03-14 15:55:10
好的,根據這些信息更新我的代碼。 – 2013-03-14 16:26:21