这不应该这么难,我有一个类库包(来自VS2015的新版本)。由于我在解决方案的其余部分引用.Net 4.6,因此我从该库的project.json文件中完全删除了asp.Net5.4。我还添加了Configuration.Json包和OptionsModel包,以及任何依赖项。我试图关注我在SO上发现的一些片段,但似乎没有人能把我带到任何地方。
MikesDotNetting有一篇很好的文章,但它只适用于mvc6项目或类库,在那里你可以引用MVC6,这对我来说不起作用。 http://www.mikesdotnetting.com/article/284/asp-net-5-configuration
public class Startup
{
public IConfiguration Configuration { get; set; }
public Startup(IHostingEnvironment env, IApplicationEnvironment appEnv)
{
var builder = new ConfigurationBuilder(appEnv.ApplicationBasePath)
.AddJsonFile("config.json");
Configuration = builder.Build();
}
}
我在许多示例中都看到了这一点,但ConfigurationBuilder采用了一系列IConfigurationProviders,appEnv.ApplicationBasePath是一个字符串。很自然,这在这里不起作用。
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server= (localdb)\\MSSQLLocalDB;Database=_CHANGE_ME;Trusted_Connection=True;"
},
"AppSetting": {
"SMSProvider": "betterSms",
"SMSAccountUser": "sakjfbhkdfbsdkfbksdfnbkdln",
"SMSAccountSecret": "dswkjgfhszdkfhdskfhdk",
"SMSPhoneFrom": "+15555555555"
}
}
}
我只是想构建一个简单的访问机制来访问我的config.json文件中包含的许多appsetting。
答案 0 :(得分:0)
您可以在应用中访问配置变量,如:
var connString = Startup.Configuration.Get("Data:DefaultConnection:ConnectionString");