我最近开始学习c#,我对方法存在的原因感到困惑.CreateScope()。
我以前从事过JAVA工作,但我无法理解它。如果我们需要一个服务作为依赖项,我们可以将其注入构造函数中,然后我们就可以使用它了。
根据我的理解,我们可以使用它创建一个新的服务范围,这在应用程序的某些引导时可能很有用。我通读了SO 的这篇文章、这篇文章和MS 的这篇文章,但我真的认为我还没有理解它的意义。
我看到人们创造
public constructor( IServiceScopeFactory scopeFactory,......)
{
this.scopeFactory = scopeFactory;
}
Run Code Online (Sandbox Code Playgroud)
然后在方法中使用它
using var scope = scopeFactory.CreateScope();
var mediator = scope.ServiceProvider.GetRequiredService<IMediator>();
await mediator.Send(....);
Run Code Online (Sandbox Code Playgroud)
但我们也可以注入 IMediator,对吗?
请在这里帮助我。谢谢 !