將Web應用程序部署到Azure時,可以通過在門戶網站中爲特定Web應用程序設置這些設置來覆蓋連接字符串和應用程序設置正在部署。有什麼方法可以從門戶網站覆蓋web.config的其他部分。我使用Umbraco CMS的插件,該插件要求web.config中的連接字符串不在文件的appSetting部分。 (他們通常將它們保存在另一個文件中,但我已將它們放在web.config中,所以我希望可以從門戶網站設置它們)將Web應用程序部署到Azure時覆蓋web.config的其他部分而不是appSettings和connectionString
以下是web.config的配置部分的示例,其中僅包含相關我指的是:
<configuration>
...A lot of other web.config stuff
<imageProcessor>
<caching currentCache="AzureBlobCache">
<caches>
<cache name="AzureBlobCache" type="ImageProcessor.Web.Plugins.AzureBlobCache.AzureBlobCache, ImageProcessor.Web.Plugins.AzureBlobCache" maxDays="365">
<settings>
<!--Azure Cache Provider-->
<setting key="CachedStorageAccount" value="Azure blob storage key" />
<setting key="CachedBlobContainer" value="cache" />
<setting key="UseCachedContainerInUrl" value="false" />
<setting key="CachedCDNRoot" value="Azure storage account" />
<setting key="CachedCDNTimeout" value="1000" />
<setting key="SourceStorageAccount" value="name=Azure storage account" />
<setting key="SourceBlobContainer" value="media" />
<setting key="StreamCachedImage" value="false" />
</settings>
</cache>
</caches>
</caching>
</imageProcessor>
</configuration>
我想要做的是在上面的緩存部分設置設置鍵。如果我無法直接在Azure門戶appSettings部分中引用此部分,那麼我可以將這些設置作爲密鑰放在web.config的appSettings部分中,並從web.config文件的這一部分引用它們?
我知道我可以使用web.config轉換來實現這一點,但這仍然會要求我檢查連接字符串到web.config.release等源代碼管理下,我寧願不要這樣做。
是否有另一種解決方案,我忽略了將執行我想要的任務? (該解決方案託管在VSTS中,因此我可以隨時通過設置鍵添加另一個構建步驟)。這樣,它們最終將與構建配置相關聯,而不是與源代碼管理相關聯。
Azure的Web應用程序不能做到這一點。你只能覆蓋你在那裏看到的東西。 – juunas
那麼你可以將緩存設置的注意力重定向到appSettings部分嗎? –
只有該圖像處理器組件支持該圖像。某些庫允許指定應用程序設置鍵而不是值。 – juunas