我知道如何在.NET 5(或之前)的Startup.cs中进行依赖注入,但是在.NET 6中如何使用顶层的Program.cs进行相同操作呢?
.NET 5:例如,在Configure方法中,我可以注入一个类。
public class Startup
{
public IConfiguration _configuration { get; }
public IWebHostEnvironment _env { get; set; }
public Startup(IConfiguration configuration, IWebHostEnvironment env)
{
_configuration = configuration;
_env = env;
}
public void ConfigureServices(IServiceCollection services)
{
// TODO
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IToInjectService serviceToInject)
{
// USE SERVICE
}
}
我应该如何在.NET 6中实现这个功能?
builder.Build()
之前得到它们? - SimoneSomeService
没有接口或者DI注册是在没有接口的情况下完成的,请使用它。(为什么要跳过接口?) 如果服务是通过接口进行DI注册的,请使用ISomeService
。 - ZarephethGetRequiredService
而不是GetService
,或者在你的代码中处理服务可能为空的情况。 - undefined