Dot-Net

用於不同配置的 ClickOnce 部署

  • February 2, 2011

我目前正在查看我們的 WPF 應用程序的 ClickOnce 部署,並且想知道是否可以為項目文件中的每個建構配置分別設置 ProductName 和 PublishUrl?

目前我不得不在發布選項中手動設置這些,但有人可能很容易忘記這樣做並最終將我們的應用程序的測試版本發佈到我們的培訓環境,反之亦然。

我知道我還必須使用 MageUI 更改應用程序標識才能在同一台 PC 上執行 ClickOnce 應用程序的多個版本,但至少不必擔心 ProductName 和 PublishUrl 屬性每次都是正確的。我們需要進行部署(儘管如果我們也可以從 IDE 中訪問應用程序標識,那將是理想的!)。

事實證明,您可以在.csproj文件中為每個配置設置設置PublishUrl和ProductName,但是您需要在刷新項目屬性之前關閉並重新打開解決方案文件,只需解除安裝並重新載入項目或在不同的環境下建構它似乎配置不足以刷新它。

我的 csproj 文件現在對每個配置都有以下設置…

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Test|AnyCPU' ">
   <PlatformTarget>AnyCPU</PlatformTarget>
   <ErrorReport>prompt</ErrorReport>
   <AppConfig>app.Test.config</AppConfig>
   <PublishUrl>http://MyServer/Synergi/Test/</PublishUrl>
   <ProductName>Synergi Test</ProductName>
</PropertyGroup>

引用自:https://stackoverflow.com/questions/1860428