-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Closed
Labels
affected-mediumThis issue impacts approximately half of our customersThis issue impacts approximately half of our customersarea-hostingIncludes HostingIncludes Hostingarea-networkingIncludes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractionsIncludes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractionsenhancementThis issue represents an ask for new feature or an enhancement to an existing oneThis issue represents an ask for new feature or an enhancement to an existing oneseverity-minorThis label is used by an internal toolThis label is used by an internal tool
Milestone
Description
We should introduce a new set of interfaces: IAsyncStartup and IAsyncStartupFilter with the following API surface:
public interface IAsyncStartup
{
IServiceProvider ConfigureServices(IServiceCollection services);
Task ConfigureAsync(IApplicationBuilder app);
}
public interface IAsyncStartupFilter
{
Func<IApplicationBuilder, Task> Configure(Func<IApplicationBuilder, Task> next);
}Startup classes will now support a Task ConfigureAsync(IApplicationBuilder app) method, which is mutually exclusive with void Configure(IApplicationBuilder app). It shall be an error to have both methods on a startup class.
IAsyncStartup and IAsyncStartupFilter will be the primitives used by the entire Hosting pipeline. Adapters will exist in Hosting to allow the continued use of IStartup and IStartupFilter in the public API surface (to reduce breaking changes).
ErroneousFatality, mausch, morquan, timothy3001, arsenkhachatryan and 31 more
Metadata
Metadata
Assignees
Labels
affected-mediumThis issue impacts approximately half of our customersThis issue impacts approximately half of our customersarea-hostingIncludes HostingIncludes Hostingarea-networkingIncludes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractionsIncludes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractionsenhancementThis issue represents an ask for new feature or an enhancement to an existing oneThis issue represents an ask for new feature or an enhancement to an existing oneseverity-minorThis label is used by an internal toolThis label is used by an internal tool