【发布时间】:2015-08-06 06:38:43
【问题描述】:
在我的 VS2013 解决方案中,我有:
- 云服务。
- Web 角色。
为什么我必须在 CloudService 的“WebRole”属性以及 Web.config 文件(在 WebRole 项目中)中指定数据库连接字符串?
两者的本质区别是什么?
【问题讨论】:
标签: asp.net visual-studio azure
在我的 VS2013 解决方案中,我有:
为什么我必须在 CloudService 的“WebRole”属性以及 Web.config 文件(在 WebRole 项目中)中指定数据库连接字符串?
两者的本质区别是什么?
【问题讨论】:
标签: asp.net visual-studio azure
当您在云服务的 WebRole 属性中定义设置时,它会保存到角色的配置设置文件 (*.cscfg) 中。在此处保存连接字符串的好处是您可以即时更改设置,而无需重新部署包。
如果您在 web.config 文件中定义此设置,如果您要对此设置进行任何更改,您将必须创建一个新包并重新部署该包,因为您的 web.config 文件已包含在您的包文件中。
【讨论】:
见CloudConfigurationManager Class。使用 CloudConfigurationManager.GetSetting("StorageConnectionString") 将从适当的配置存储中检索设置 - 对于 Web 角色:首先在 ServiceDefinition.csdef 中查找设置,如果在那里找不到,它将在 web.config 中查找值.
【讨论】: