ApplicationBuilder 类

定义

的默认实现 IApplicationBuilder

public ref class ApplicationBuilder : Microsoft::AspNetCore::Builder::IApplicationBuilder
public class ApplicationBuilder : Microsoft.AspNetCore.Builder.IApplicationBuilder
type ApplicationBuilder = class
    interface IApplicationBuilder
Public Class ApplicationBuilder
Implements IApplicationBuilder
继承
ApplicationBuilder
实现

构造函数

ApplicationBuilder(IServiceProvider)

初始化 ApplicationBuilder 的新实例。

ApplicationBuilder(IServiceProvider, Object)

初始化 ApplicationBuilder 的新实例。

属性

ApplicationServices

IServiceProvider获取应用程序服务的 。

Properties

获取 的 ApplicationBuilder一组属性。

ServerFeatures

IFeatureCollection获取服务器功能的 。

方法

Build()

生成执行 RequestDelegate 添加的中间件的 。

New()

创建此应用程序生成器的副本。

创建的克隆具有与当前实例相同的属性,但不复制请求管道。

Use(Func<RequestDelegate,RequestDelegate>)

将中间件添加到应用程序请求管道。

扩展方法

UseAntiforgery(IApplicationBuilder)

将防伪中间件添加到管道。

UseRequestLocalization(IApplicationBuilder)

添加 以 RequestLocalizationMiddleware 根据客户端提供的信息自动设置请求的区域性信息。

UseRequestLocalization(IApplicationBuilder, RequestLocalizationOptions)

添加 以 RequestLocalizationMiddleware 根据客户端提供的信息自动设置请求的区域性信息。

UseRequestLocalization(IApplicationBuilder, Action<RequestLocalizationOptions>)

添加 以 RequestLocalizationMiddleware 根据客户端提供的信息自动设置请求的区域性信息。

UseRequestLocalization(IApplicationBuilder, String[])

添加 以 RequestLocalizationMiddleware 根据客户端提供的信息自动设置请求的区域性信息。

UseAuthentication(IApplicationBuilder)

AuthenticationMiddleware将 添加到指定的 IApplicationBuilder,这将启用身份验证功能。

UseAuthorization(IApplicationBuilder)

AuthorizationMiddleware将 添加到指定的 IApplicationBuilder,这将启用授权功能。

授权使用终结点路由路由的资源时,此调用必须在 调用 app.UseRouting()app.UseEndpoints(...) 之间出现,中间件才能正常运行。

UseCertificateForwarding(IApplicationBuilder)

向管道添加中间件,该中间件将在请求标头中查找证书,并对其进行解码,并更新 HttpContext.Connection.ClientCertificate。

UseBlazorFrameworkFiles(IApplicationBuilder)

将应用程序配置为从根路径“/”提供 Blazor WebAssembly 框架文件。

UseBlazorFrameworkFiles(IApplicationBuilder, PathString)

将应用程序配置为从路径 pathPrefix提供 Blazor WebAssembly 框架文件。 此路径必须对应于引用的 Blazor WebAssembly 应用程序项目。

UseConcurrencyLimiter(IApplicationBuilder)
已过时.

添加 以 ConcurrencyLimiterMiddleware 限制并发执行的请求数。

UseConnections(IApplicationBuilder, Action<ConnectionsRouteBuilder>)
已过时.

向请求执行管道添加对 ASP.NET Core连接处理程序IApplicationBuilder的支持。

此方法已过时,并将从未来版本中删除。 建议的替代方法是在 Microsoft.AspNetCore.Builder.UseEndpoints (...) 中使用 MapConnections 或 MapConnectionHandler<TConnectionHandler> 。

UseCookiePolicy(IApplicationBuilder)

CookiePolicyMiddleware 处理程序添加到指定的 IApplicationBuilder,这将启用 Cookie 策略功能。

UseCookiePolicy(IApplicationBuilder, CookiePolicyOptions)

CookiePolicyMiddleware 处理程序添加到指定的 IApplicationBuilder,这将启用 Cookie 策略功能。

UseCors(IApplicationBuilder)

将 CORS 中间件添加到你的 Web 应用程序管道,以允许跨域请求。

UseCors(IApplicationBuilder, Action<CorsPolicyBuilder>)

将 CORS 中间件添加到你的 Web 应用程序管道,以允许跨域请求。

UseCors(IApplicationBuilder, String)

将 CORS 中间件添加到你的 Web 应用程序管道,以允许跨域请求。

UseDatabaseErrorPage(IApplicationBuilder)
已过时.

从管道中捕获可使用 Entity Framework 迁移解决的同步和异步数据库相关异常。 当这些异常出现时,便会生成 HTML 响应,其中包含用于解决问题的可能操作的详细信息。

UseDatabaseErrorPage(IApplicationBuilder, DatabaseErrorPageOptions)
已过时.

从管道中捕获可使用 Entity Framework 迁移解决的同步和异步数据库相关异常。 当这些异常出现时,便会生成 HTML 响应,其中包含用于解决问题的可能操作的详细信息。

UseDefaultFiles(IApplicationBuilder)

在当前路径上启用默认文件映射

UseDefaultFiles(IApplicationBuilder, DefaultFilesOptions)

使用给定的选项启用默认文件映射

UseDefaultFiles(IApplicationBuilder, String)

为给定请求路径启用默认文件映射

UseDeveloperExceptionPage(IApplicationBuilder)

从管道捕获同步和异步 Exception 实例,并生成 HTML 错误响应。

UseDeveloperExceptionPage(IApplicationBuilder, DeveloperExceptionPageOptions)

从管道捕获同步和异步 Exception 实例,并生成 HTML 错误响应。

UseDirectoryBrowser(IApplicationBuilder)

在当前路径上启用目录浏览

UseDirectoryBrowser(IApplicationBuilder, DirectoryBrowserOptions)

使用给定的选项启用目录浏览

UseDirectoryBrowser(IApplicationBuilder, String)

启用给定请求路径的目录浏览

UseEndpoints(IApplicationBuilder, Action<IEndpointRouteBuilder>)

Microsoft.AspNetCore.Routing.EndpointMiddleware使用EndpointDataSource从配置的 IEndpointRouteBuilder生成的实例,将中间件添加到指定的 IApplicationBuilder 。 将 Microsoft.AspNetCore.Routing.EndpointMiddleware 执行与 Endpoint 当前请求关联的 。

UseRouting(IApplicationBuilder)

将中间 Microsoft.AspNetCore.Routing.EndpointRoutingMiddleware 件添加到指定的 IApplicationBuilder

UseExceptionHandler(IApplicationBuilder)

向管道添加中间件,用于捕获异常、记录异常,并在备用管道中重新执行请求。 如果响应已启动,则不会重新执行请求。

UseExceptionHandler(IApplicationBuilder, ExceptionHandlerOptions)

向管道添加中间件,用于捕获异常、记录异常,并在备用管道中重新执行请求。 如果响应已启动,则不会重新执行请求。

UseExceptionHandler(IApplicationBuilder, Action<IApplicationBuilder>)

向管道添加中间件,用于捕获异常、记录异常,并在备用管道中重新执行请求。 如果响应已启动,则不会重新执行请求。

UseExceptionHandler(IApplicationBuilder, String)

向管道添加中间件,用于捕获异常、记录异常、重置请求路径并重新执行请求。 如果响应已启动,则不会重新执行请求。

UseExceptionHandler(IApplicationBuilder, String, Boolean)

向管道添加中间件,用于捕获异常、记录异常、重置请求路径并重新执行请求。 如果响应已启动,则不会重新执行请求。

UseFileServer(IApplicationBuilder)

为当前目录中的当前请求路径启用所有静态文件中间件(目录浏览除外)。

UseFileServer(IApplicationBuilder, FileServerOptions)

使用给定的选项启用所有静态文件中间件

UseFileServer(IApplicationBuilder, Boolean)

为当前目录中的当前请求路径启用所有静态文件中间件。

UseFileServer(IApplicationBuilder, String)

为同名目录中的给定请求路径启用所有静态文件中间件(目录浏览除外)

UseForwardedHeaders(IApplicationBuilder)

将转发的标头应用于当前请求上的匹配字段。

按照约定,HTTP 代理在已知的 HTTP 标头中转发来自客户端的信息。 读取 ForwardedHeadersMiddleware 这些标头并填充 HttpContext 上的关联字段。

UseForwardedHeaders(IApplicationBuilder, ForwardedHeadersOptions)

将转发的标头应用于当前请求上的匹配字段。

按照约定,HTTP 代理在已知的 HTTP 标头中转发来自客户端的信息。 读取 ForwardedHeadersMiddleware 这些标头并填充 HttpContext 上的关联字段。

UseHeaderPropagation(IApplicationBuilder)

添加一个中间件,用于收集要传播到 的 HttpClient标头。

UseHealthChecks(IApplicationBuilder, PathString)

添加提供运行状况检查状态的中间件。

UseHealthChecks(IApplicationBuilder, PathString, HealthCheckOptions)

添加提供运行状况检查状态的中间件。

UseHealthChecks(IApplicationBuilder, PathString, Int32)

添加提供运行状况检查状态的中间件。

UseHealthChecks(IApplicationBuilder, PathString, Int32, HealthCheckOptions)

添加提供运行状况检查状态的中间件。

UseHealthChecks(IApplicationBuilder, PathString, String)

添加提供运行状况检查状态的中间件。

UseHealthChecks(IApplicationBuilder, PathString, String, HealthCheckOptions)

添加提供运行状况检查状态的中间件。

UseHostFiltering(IApplicationBuilder)

添加中间件,用于按允许的主机标头筛选请求。 无效的请求将被拒绝并显示 400 状态代码。

UseHsts(IApplicationBuilder)

添加用于使用 HSTS 的中间件,以添加 Strict-Transport-Security 标头。

UseHttpLogging(IApplicationBuilder)

添加可记录 HTTP 请求和响应的中间件。

UseW3CLogging(IApplicationBuilder)

添加一个中间件,该中间件可以记录 W3C 格式的服务器日志的 HTTP 请求和响应。

UseHttpMethodOverride(IApplicationBuilder)

允许传入的 POST 请求替代标头中指定的类型的方法类型。 当客户端被限制为发送 GET 或 POST 方法但想要调用其他 HTTP 方法时,将使用此中间件。 默认情况下,X-HTTP-Method-Override 请求标头用于指定要隧道的 HTTP 方法。

UseHttpMethodOverride(IApplicationBuilder, HttpMethodOverrideOptions)

允许传入的 POST 请求替代窗体中指定的类型的方法类型。 当客户端被限制为发送 GET 或 POST 方法但想要调用其他 HTTP 方法时,将使用此中间件。

UseHttpsRedirection(IApplicationBuilder)

添加用于将 HTTP 请求重定向到 HTTPS 的中间件。

Map(IApplicationBuilder, PathString, Action<IApplicationBuilder>)

根据给定请求路径的匹配项对请求管道进行分支。 如果请求路径以给定路径开头,则执行分支。

Map(IApplicationBuilder, PathString, Boolean, Action<IApplicationBuilder>)

根据给定请求路径的匹配项对请求管道进行分支。 如果请求路径以给定路径开头,则执行分支。

Map(IApplicationBuilder, String, Action<IApplicationBuilder>)

根据给定请求路径的匹配项对请求管道进行分支。 如果请求路径以给定路径开头,则执行分支。

MapWhen(IApplicationBuilder, Func<HttpContext,Boolean>, Action<IApplicationBuilder>)

根据给定谓词的结果对请求管道执行分支操作。

UseMigrationsEndPoint(IApplicationBuilder)

处理请求以执行迁移操作。 中间件将侦听对 DefaultPath发出的请求。

UseMigrationsEndPoint(IApplicationBuilder, MigrationsEndPointOptions)

处理请求以执行迁移操作。 中间件将侦听对 中 options配置的路径的请求。

UseMvc(IApplicationBuilder)

将 MVC 添加到 IApplicationBuilder 请求执行管道。

UseMvc(IApplicationBuilder, Action<IRouteBuilder>)

将 MVC 添加到 IApplicationBuilder 请求执行管道。

UseMvcWithDefaultRoute(IApplicationBuilder)

使用名为“default”的默认路由和以下模板将 MVC 添加到 IApplicationBuilder 请求执行管道:“{controller=Home}/{action=Index}/{id?}”。

UseOutputCache(IApplicationBuilder)

的默认实现 IApplicationBuilder

UseOwin(IApplicationBuilder)

将 OWIN 管道添加到指定的 IApplicationBuilder

UseOwin(IApplicationBuilder, Action<Action<Func<Func<IDictionary<String,Object>,Task>,Func<IDictionary<String,Object>,Task>>>>)

将 OWIN 中间件管道添加到指定的 IApplicationBuilder

UseRateLimiter(IApplicationBuilder)

为应用程序启用速率限制。

UseRateLimiter(IApplicationBuilder, RateLimiterOptions)

为应用程序启用速率限制。

UseRequestDecompression(IApplicationBuilder)

添加用于动态解压缩 HTTP 请求正文的中间件。

UseRequestTimeouts(IApplicationBuilder)

为应用程序启用请求超时。

默认情况下未配置超时。 必须在 RequestTimeoutOptionsRequestTimeoutAttribute 终结点上或使用 WithRequestTimeout 路由扩展配置它们。

UseResponseCaching(IApplicationBuilder)

ResponseCachingMiddleware添加 用于缓存 HTTP 响应的 。

UseResponseCompression(IApplicationBuilder)

添加用于动态压缩 HTTP 响应的中间件。

UseRewriter(IApplicationBuilder)

检查给定的 URL 是否与规则和条件匹配,并在匹配时修改 HttpContext。

UseRewriter(IApplicationBuilder, RewriteOptions)

检查给定的 URL 是否与规则和条件匹配,并在匹配时修改 HttpContext。

UseRouter(IApplicationBuilder, IRouter)

RouterMiddleware使用指定的 将中间件添加到指定的 IApplicationBuilderIRouter

UseRouter(IApplicationBuilder, Action<IRouteBuilder>)

RouterMiddleware使用从配置的 IRouteBuilder生成的 向指定的 IApplicationBuilderIRouter 添加中间件。

Run(IApplicationBuilder, RequestDelegate)

将终端中间件委托添加到应用程序的请求管道。

UseSession(IApplicationBuilder)

添加 以 SessionMiddleware 自动为应用程序启用会话状态。

UseSession(IApplicationBuilder, SessionOptions)

添加 以 SessionMiddleware 自动为应用程序启用会话状态。

UseSignalR(IApplicationBuilder, Action<HubRouteBuilder>)
已过时.

将 SignalR 添加到 IApplicationBuilder 请求执行管道。

此方法已过时,并将从未来版本中删除。 建议的替代方法是在 Microsoft.AspNetCore.Builder.UseEndpoints (...) 中使用 MapHub<THub> 。

UseSpa(IApplicationBuilder, Action<ISpaBuilder>)

通过返回单页应用程序 (SPA) 的默认页面,处理中间件链中来自此点的所有请求。

此中间件应放置在链的后期,以便优先处理静态文件、MVC 操作等的其他中间件。

UseStaticFiles(IApplicationBuilder)

为当前请求路径启用静态文件服务

UseStaticFiles(IApplicationBuilder, StaticFileOptions)

使用给定的选项启用静态文件提供

UseStaticFiles(IApplicationBuilder, String)

为给定请求路径启用静态文件服务

UseStatusCodePages(IApplicationBuilder)

添加具有默认响应处理程序的 StatusCodePages 中间件,用于检查状态代码在 400 到 599 之间没有正文的响应。

UseStatusCodePages(IApplicationBuilder, StatusCodePagesOptions)

使用给定选项添加 StatusCodePages 中间件,用于检查状态代码介于 400 和 599 之间且没有正文的响应。

UseStatusCodePages(IApplicationBuilder, Action<IApplicationBuilder>)

使用指定的备用中间件管道将 StatusCodePages 中间件添加到管道,以生成响应正文。

UseStatusCodePages(IApplicationBuilder, Func<StatusCodeContext,Task>)

添加具有指定处理程序的 StatusCodePages 中间件,用于检查状态代码介于 400 和 599 之间且没有正文的响应。

UseStatusCodePages(IApplicationBuilder, String, String)

添加包含要发送的指定响应正文的 StatusCodePages 中间件。 这可能包括状态代码的“”{0}占位符。 中间件检查状态代码介于 400 和 599 之间且没有正文的响应。

UseStatusCodePagesWithRedirects(IApplicationBuilder, String)

将 StatusCodePages 中间件添加到管道。 指定应通过使用给定位置 URL 模板进行重定向来处理响应。 这可能包括状态代码的“”{0}占位符。 以“~”开头的 URL 将预先添加 PathBase,其中将按原样使用任何其他 URL。

UseStatusCodePagesWithReExecute(IApplicationBuilder, String, String)

将 StatusCodePages 中间件添加到管道。 指定应使用备用路径重新执行请求管道,从而生成响应正文。 此路径可能包含状态代码的“”{0}占位符。

Use(IApplicationBuilder, Func<HttpContext,RequestDelegate,Task>)

将内联定义的中间件委托添加到应用程序的请求管道。 如果不调用下一个函数,请改用 Run(IApplicationBuilder, RequestDelegate)

Use(IApplicationBuilder, Func<HttpContext,Func<Task>,Task>)

将内联定义的中间件委托添加到应用程序的请求管道。 如果不调用下一个函数,请改用 Run(IApplicationBuilder, RequestDelegate)

为了获得更好的性能,首选使用 Use(IApplicationBuilder, Func<HttpContext,RequestDelegate,Task>) ,如下所示:

app.Use((context, next) =>
{
    return next(context);
});
UseMiddleware(IApplicationBuilder, Type, Object[])

将中间件类型添加到应用程序的请求管道。

UseMiddleware<TMiddleware>(IApplicationBuilder, Object[])

将中间件类型添加到应用程序的请求管道。

UsePathBase(IApplicationBuilder, PathString)

添加一个中间件,用于从请求路径中提取指定的路径基,并将其追加到请求路径基。

UseWhen(IApplicationBuilder, Func<HttpContext,Boolean>, Action<IApplicationBuilder>)

有条件地在请求管道中创建重新加入main管道的分支。

UseWebAssemblyDebugging(IApplicationBuilder)

在 Chromium 开发工具中添加调试 Blazor WebAssembly 应用程序所需的中间件。

UseWebpackDevMiddleware(IApplicationBuilder, WebpackDevMiddlewareOptions)
已过时.

启用 Webpack 开发中间件支持。 这会在应用程序的内存中托管 Webpack 编译器的实例,以便始终提供最新的 Webpack 生成资源,而无需手动运行编译器。 由于 Webpack 编译器实例保留在内存中,因此增量编译比从头开始重新运行编译器要快得多。

与 Webpack 生成的文件匹配的传入请求将通过直接返回 Webpack 编译器输出来处理,而不考虑磁盘上的文件。 如果在请求到达时正在进行编译,响应将暂停,直到更新的编译器输出准备就绪。

UseWebSockets(IApplicationBuilder)

WebSocketMiddleware将 添加到请求管道。

UseWebSockets(IApplicationBuilder, WebSocketOptions)

WebSocketMiddleware将 添加到请求管道。

UseWelcomePage(IApplicationBuilder)

将 WelcomePageMiddleware 添加到管道。

UseWelcomePage(IApplicationBuilder, WelcomePageOptions)

使用给定的选项将 WelcomePageMiddleware 添加到管道。

UseWelcomePage(IApplicationBuilder, PathString)

将 WelcomePageMiddleware 添加到具有给定的路径的管道。

UseWelcomePage(IApplicationBuilder, String)

将 WelcomePageMiddleware 添加到具有给定的路径的管道。

UseHttpLoggingMiddleware(IApplicationBuilder)

将传入的 HTTP 请求日志记录中间件注册到 IApplicationBuilder

UseRequestCheckpoint(IApplicationBuilder)

将请求检查点相关的中间件注册到管道中。

UseRequestLatencyTelemetry(IApplicationBuilder)

将请求延迟遥测中间件添加到 IApplicationBuilder 请求执行管道。

UseSpaStaticFiles(IApplicationBuilder)

将应用程序配置为为单页应用程序 (SPA) 提供静态文件。 将使用已注册 ISpaStaticFileProvider 的服务查找文件。

UseSpaStaticFiles(IApplicationBuilder, StaticFileOptions)

将应用程序配置为为单页应用程序 (SPA) 提供静态文件。 将使用已注册 ISpaStaticFileProvider 的服务查找文件。

适用于