Это мой метод IoC в контейнере зависимостей.
public class DependencyContainer
{
public static void RegisterServices(IServiceCollection service)
{
#region Services Injection
service.AddScoped<IUserService, UserService>();
#endregion
#region Repositories Injection
service.AddScoped<IUserRepository, UserRepository>();
#endregion
}
}
Теперь я хочу добавить его в программу .cs в веб-слое. Как я могу это сделать в .NET 8?
в .NET 5 это было:
public static void RegisterServices(IServiceCollection services)
{
DependencyContainer.RegisterServices(services);
}
но в .NET 8 нет общедоступного метода, как мне это сделать?
@GuruStron Делюсь этим, я не знаю, как мне его вызвать в program.cs в dot.net 8





WebApplicationBuilder возвращается свойством WebApplication.CreateBuilderServices типа IServiceCollection, которое используется именно для регистрации служб DI, поэтому:
DependencyContainer.RegisterServices(builder.Services);
Это описано в документации по переходу на 6.0:
Мне пришлось написать в конце файла program.cs? или следует писать внизу? builder.Services.AddControllersWithViews(); вар приложение = builder.Build();
@masoudmazloum, ты должен написать это раньше var app = builder.Build();. Более точное местоположение зависит от вас.
Перед этим кодом: builder.Services.AddControllersWithViews(); ? верно?
@masoudmazloum обычно это не имеет значения.
Что такое второй
RegisterServices, который звонитDependencyContainer.RegisterServices? Можете ли вы поделиться содержимымProgram.cs?