作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在整个应用程序中使用以下 Singleton 类:
public sealed class AppSettings
{
private static readonly Lazy<AppSettings> _lazy =
new Lazy<AppSettings>(() => new AppSettings());
private AppSettings()
{
// I want to inject this
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile($"appsettings.json", optional: true, reloadOnChange: true);
Config = builder.Build();
}
public static AppSettings Instance => _lazy.Value;
public IConfigurationRoot Config { get; }
}
我想注入(inject) IConfiguration 而不是在其中构建它。我该怎么做?
最佳答案
您不需要创建自己的单例类。相反,创建一个普通类并将其作为单例注册/添加到 DI 容器:
public sealed class AppSettings
{
private IConfiguration _configuration;
public AppSettings(IConfiguration configuration)
{
_configuration = configuration;
}
...
}
然后在 ConfigureServices
方法中使用
// IConfigurationRoot ConfigureServices;
services.AddSingleton(new AppSettings(Configuration));
关于asp.net-core - 将 .NET Core IConfiguration 注入(inject)单例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47820196/
我最近购买了《C 编程语言》并尝试了 Ex 1-8这是代码 #include #include #include /* * */ int main() { int nl,nt,nb;
早上好!我有一个变量“var”,可能为 0。我检查该变量是否为空,如果不是,我将该变量保存在 php session 中,然后调用另一个页面。在这个新页面中,我检查我创建的 session 是否为空,
我正在努力完成 Learn Python the Hard Way ex.25,但我无法理解某些事情。这是脚本: def break_words(stuff): """this functio
我是一名优秀的程序员,十分优秀!