Знали ли вы...
Что в .NET 7 при разработке API больше не требуется явно указывать атрибут
Теперь биндинг параметров у действий в контроллерах также отслеживает то, что приходит из DI контейнера.
Соответственно, такой код спокойно отработает без ошибок:
Ну а в случае, когда такое неявное поведение не нравится или не требуется, его можно отключить следующим образом:
Поделитесь в комментариях темами, которые хотелось бы разобрать на канале.
Что в .NET 7 при разработке API больше не требуется явно указывать атрибут
[FromServices]
для зависимостей, указанных в параметре метода?Теперь биндинг параметров у действий в контроллерах также отслеживает то, что приходит из DI контейнера.
Соответственно, такой код спокойно отработает без ошибок:
Services.AddScoped<SomeCustomType>();
[Route("[controller]")]
[ApiController]
public class MyController : ControllerBase
{
public ActionResult Get(SomeCustomType service) => Ok();
}
Ну а в случае, когда такое неявное поведение не нравится или не требуется, его можно отключить следующим образом:
Services.Configure<ApiBehaviorOptions>(options =>
{
options.DisableImplicitFromServicesParameters = true;
})
Поделитесь в комментариях темами, которые хотелось бы разобрать на канале.