Unity:长期依赖中的异步初始化

时间:2018-08-03 12:15:24

标签: c# .net asynchronous async-await unity-container

我使用Unity DI进行了更大的项目。现在,需要更改DI容器层次结构顶部的长期存在实例之一,以进行异步初始化。

仅在干净的流程中,需要运行的异步方法无法使用难看的“一劳永逸”方法工作。

如果我创建了一个异步或惰性初始化方法,则需要从多个地方调用它以确保其运行一次-这不是最优雅的方法。

我能用Unity(最新)做任何事情来触发异步初始化方法吗?

我知道之前已经有人问过这个问题,但是由于该类在DI层次结构中的位置,比常规的短寿命类丑陋。

public class SomeContext
{
    public SomeContext()
    {
    }

    public async Task InitAsync()
    {
        await NeedsToRunAsync();
    }
}

0 个答案:

没有答案