Я изучаю ядро ASP.NET через видео с множеством сайтов.Парень в видео говорит мне, что я могу добавить «сервис» как одиночный или как переходный процесс, зарегистрировав его в Startup.ConfigureServices.
public class Startup {
public Startup() {
}
public IConfiguration Configuration { get; set; }
// This method gets called by the runtime. Use this method to add services to the container.
// For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
public void ConfigureServices(IServiceCollection services) {
// Register the Greeter as an IGreeter and have the ASP.NET framework register it to be available to anyone who wants an IGreeter
// Dependency injection?
services.AddSingleton<IGreeter, Greeter>();
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env, IGreeter greeter) {
if (env.IsDevelopment()) {
app.UseDeveloperExceptionPage();
}
app.Run(async (context) => {
var greeting = greeter.GetGreeting();
await context.Response.WriteAsync(greeting);
});
}
}
Он не очень понимал, кто его создает, каково его время жизни, и где это доступно.Может ли кто-нибудь заполнить эти детали для меня?
Делает ли это то, что я сделал бы с инфраструктурой внедрения зависимостей, такой как Autofac, но в ASP.NET Core она встроена?Или это другое?