我在运行时生成一个单例
public void ConfigureServices(IServiceCollection services)
{
var applications = Utils.generateApplications()
services.AddSingleton<ApplicationModel[]>(applications);
services.AddMvc();
}
我以后如何ApplicationModel[]使用全新的ApplicationModel[]. 我的应用程序中有一个功能,用户可以使用它来触发应用程序上的数据刷新,但是如何更新底层注入的 Singleton,以便所有未来的注入都使用更新后的应用程序?我有一个函数Utils.generateApplications()可以获取最新的应用程序列表并返回一个ApplicationModel[]. 如果有意义的话,如何用一个新对象覆盖旧注入的 Singleton 以注入到未来的调用中?
我有一些代码:
public void UpdateData()
{
var applications = Utils.generateApplications()
//How do I set applications to replace the injected singleton for all future injections?
}