2015-10-14 49 views
1

我使用美國全球化開發了一個本地應用程序。因此,web.config看起來像:Azure Web應用程序全球化

<system.web> 
    ... 
    <globalization culture="en-US" uiCulture="en-US" /> 
    <!--<globalization culture="no" uiCulture="no" />--> 
    ... 
</system.web> 

我有兩個單獨的Azure網絡應用程序,我部署應用程序。我直接在azure管理門戶中設置連接字符串和應用程序設置,我發現沒問題,因爲我只需要這樣做一次。問題在於,沒有選擇在管理門戶中設置全球化元素,並且部署始終將其重寫回美國(要求的值不是 - 挪威,不重要,它應該與美國不同)。

有沒有辦法使用Azure門戶(更好的解決方案imho)或使用部署腳本來處理它?如果是這樣,那麼怎麼樣?

+1

現在不可能通過門戶設置全球化元素。但是您可以提交一個功能請求以將其添加到此處:http://feedback.azure.com/forums/169385-web-apps-formerly-websites –

回答

1

你可以這樣使用自定義部署腳本執行:http://blog.amitapple.com/post/38417491924/azurewebsitecustomdeploymentpart1/#.Vh5_QXmFMaU

的一種方式,使自定義部署腳本你想會是有一個應用程序設置您在挪威的網站定義(通過門戶網站)什麼套到「位置='挪威'」。然後,在您的自定義部署腳本中,檢查應用程序設置是否設置爲挪威(它將作爲環境變量提供)。

如果是這樣,那麼您將使用挪威全球​​化設置覆蓋web配置。有多種方法可以實現這個部分。

如果該位置未定義或設置爲美國,則將其保留爲默認美國設置。

+0

到目前爲止,我使用VS Publish/WebDeploy進行部署,因此我猜想自定義部署腳本會有點不同。廣告重寫web.config:是否有另一種方式,然後XSLT? – Santhos

+0

@Santhos,如果你不想去XSLT路線,一個選擇是創建第二個web.config(例如,web.config.norway),並用挪威版本覆蓋主web.config。另一個可能是在web.config中進行自定義搜索/替換,但這可能很容易中斷。 –

+1

@Santhos此外,您可以從https://''.scm.azurewebsites.net/api/deploymentscript下載您的站點的當前部署腳本,只需添加代碼以修改您的web.config –