2015-10-14 57 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 –