我正在部署一些Windows Azure项目,我注意到不断将我的角色配置设置从使用LocalStorage转换为实际使用我的Windows Azure存储连接字符串有点痛苦。
对于本地开发,我想使用它:
UseDevelopmentStorage=true
但是对于部署的应用程序,我想使用类似的东西:
DefaultEndpointsProtocol=https;AccountName=myAccountName;AccountKey=blah
我最终在部署之前更改了我的角色的配置连接字符串,或者如果我忘记这样做,我将尝试进入Windows Azure门户并更改它们(但这通常发生在我观察我的角色之后)实例开始和停止一遍又一遍。)
我觉得我遗漏了一些基本的东西,但有没有一种直接的方法让部署过程切换我的角色连接设置以使用生产存储帐户而不是本地存储?
答案 0 :(得分:4)
您可以在Azure SDK 1.7 http://msdn.microsoft.com/en-us/LIBRARY/microsoft.windowsazure.cloudconfigurationmanager
中使用CloudConfigurationManager首先查看ServiceConfiguration.cscfg,例如ServiceConfiguration.Cloud.cscfg用于配置设置。如果不存在,则会回退到web.config和app.config
例如
CloudConfigurationManager.GetSetting("StorageConnectionString")
将在适当的cscfg文件中查找StorageConnectionString设置,然后它将搜索web.config,然后搜索app.config。
答案 1 :(得分:2)
如果您想使用Visual Studio配置转换,请参阅my answer以了解Panagiotis提到的问题。
答案 2 :(得分:1)
答案 3 :(得分:1)
如果使用CI服务器,则可以自动更改连接字符串。详情here。
答案 4 :(得分:0)