Использование внутреннего DI Asp.Net Core для получения экземпляра объекта в методе RunAsync
Хотите получить экземпляр моего пользовательского объекта в методе RunAsync StatefulService, используя внутреннюю реализацию DI в Asp.Net Core.
internal sealed class SomeProcessor : StatefulService
{
public SomeProcessor(StatefulServiceContext context)
: base(context)
{
}
protected override Task RunAsync(CancellationToken cancellationToken)
{
//Want to resolve my custom object instance Core's DI. Something like.
//var customObj = ServiceCollection().BuildServiceProvider().GetRequiredService<ICustomObj>();
//await Task.WhenAll(customObj.ProcessAsync(cancellationToken)).ConfigureAwait(false);
}
}
У меня может быть отдельный DI-контейнер, такой как внедрение зависимостей для сервисов с отслеживанием состояния, или я могу жестко закодировать реализацию моего объекта, например Service Fabric Stateful Service, с внедрением основных зависимостей Asp.net.
Вопрос в том, могу ли я как-то использовать DI в Asp.Net Core.