DynamicRouteValueTransformer 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供一个抽象,用于动态操作路由值以选择控制器操作或页面。
public ref class DynamicRouteValueTransformer abstract
public abstract class DynamicRouteValueTransformer
type DynamicRouteValueTransformer = class
Public MustInherit Class DynamicRouteValueTransformer
- 继承
-
DynamicRouteValueTransformer
注解
DynamicRouteValueTransformer可与 或 MapDynamicPageRoute
一起使用MapDynamicControllerRoute<TTransformer>(IEndpointRouteBuilder, String),以实现选择控制器操作或页面的自定义逻辑。
从实现返回的 TransformAsync(HttpContext, RouteValueDictionary) 路由值将用于根据路由值的匹配选择操作。 与路由值匹配的所有操作都将被视为候选项,并可能由 FilterAsync(HttpContext, RouteValueDictionary, IReadOnlyList<Endpoint>) 和 IEndpointSelectorPolicy 实现(如 HttpMethodMatcherPolicy)进一步消除歧义。
将按以下顺序为每个动态终结点调用实例上的 DynamicRouteValueTransformer 操作:
- State 已设置
- TransformAsync(HttpContext, RouteValueDictionary)
- FilterAsync(HttpContext, RouteValueDictionary, IReadOnlyList<Endpoint>)
在服务集合中注册为暂时性的实现可以安全地使用类成员在这些操作中保留状态。
应将 DynamicRouteValueTransformer 实现注册到服务集合中,类型为 DynamicRouteValueTransformer。 实现可以使用任何服务生存期。 使用 的 State 实现必须注册为暂时性。
构造函数
DynamicRouteValueTransformer() |
提供一个抽象,用于动态操作路由值以选择控制器操作或页面。 |
属性
State |
获取或设置状态值。 从注册到转换器的任意值。 |
方法
FilterAsync(HttpContext, RouteValueDictionary, IReadOnlyList<Endpoint>) |
根据 返回 TransformAsync(HttpContext, RouteValueDictionary)的路由值筛选作为查找结果选择的终结点集。 |
TransformAsync(HttpContext, RouteValueDictionary) |
创建一组转换的路由值,这些值将用于选择操作。 |