Asp.net 5有一个新的配置系统,它利用json文件进行设置.您必须使用新的Configuration类的.AddJsonFile(string fileName)方法手动选择要加载的配置文件.
同时,在Azure土地上,我们有了这个漂亮的CloudConfigurationManager类,它应该是从Azure网站设置或活动的web.config处理抓取设置,如果没有找到Azure设置.
但这两件事情是如何共同合作的呢?找到任何文档时遇到麻烦我想在Azure中管理我的设置进行生产,但是使用config.json进行本地调试.查找任何示例或文档时遇到了很多麻烦.
解决方法
那么事实证明,当使用CloudConfigurationManager与asp.net 5时,答案是你没有,而样板代码已经覆盖了它. (感谢Scott Hanselman在Twitter上回复我)
所以标准方法是这样的:
IConfiguration configuration = new Configuration() .AddJsonFile("config.json") // adds settings from the config.json file .AddEnvironmentVariables(); // adds settings from the Azure WebSite config
这些被调用的顺序意味着来自环境变量的设置会从本地配置中覆盖设置.所有你需要做的是利用这一点,确保Azure设置将模仿你的Json设置 – 所以如果你的json文件看起来像
{ "AppSettings": { "ConnectionString": "blahblahblah" } }
你想要设置你的设置在天蓝色看起来像
Key: AppSettings:ConnectionString Value: blahblahblah
,然后您可以继续使用与本地配置完全相同的代码.
var connectionString = Configuration.Get("AppSettings:ConnectionString");