NonFileNameRouteConstraint 类

定义

将路由参数限制为仅表示非文件名值。 不验证路由值是否包含有效的文件系统字符,或者该值是否表示磁盘上的实际文件。

public ref class NonFileNameRouteConstraint : Microsoft::AspNetCore::Routing::IRouteConstraint
public class NonFileNameRouteConstraint : Microsoft.AspNetCore.Routing.IRouteConstraint
public class NonFileNameRouteConstraint : Microsoft.AspNetCore.Routing.IRouteConstraint, Microsoft.AspNetCore.Routing.Matching.IParameterLiteralNodeMatchingPolicy
type NonFileNameRouteConstraint = class
    interface IParameterPolicy
    interface IRouteConstraint
type NonFileNameRouteConstraint = class
    interface IRouteConstraint
    interface IParameterPolicy
type NonFileNameRouteConstraint = class
    interface IRouteConstraint
    interface IParameterPolicy
    interface IParameterLiteralNodeMatchingPolicy
Public Class NonFileNameRouteConstraint
Implements IRouteConstraint
Public Class NonFileNameRouteConstraint
Implements IParameterLiteralNodeMatchingPolicy, IRouteConstraint
继承
NonFileNameRouteConstraint
实现

注解

此约束可用于消除对应用程序提供的动态内容和静态文件的请求的歧义。

此约束通过检查 () / 分隔的值的最后一个 URL 路径段来确定路由值是否表示文件名。 最后一个段必须包含点 (.) 字符,后跟一个或多个非 (.) 字符。

如果路由值不包含 , / 则整个值将被解释为最后一段。

NonFileNameRouteConstraint不会尝试验证值是否包含当前操作系统的法律文件名。

将匹配为非文件名说明的路由值示例

  • /a/b/c :最终段不包含 .
  • /a/b.d/c :最终段不包含 .
  • /a/b.d/c/ :最后一段为空。
  • :值为空

将拒绝为文件名的路由值示例-说明

  • /a/b/c.txt :最后一段 . 包含后跟其他字符的 。
  • /hello.world.txt :最后一段 . 包含后跟其他字符的 。
  • hello.world.txt :最后一段 . 包含后跟其他字符的 。
  • .gitignore :最后一段 . 包含后跟其他字符的 。

构造函数

NonFileNameRouteConstraint()

将路由参数限制为仅表示非文件名值。 不验证路由值是否包含有效的文件系统字符,或者该值是否表示磁盘上的实际文件。

方法

Match(HttpContext, IRouter, String, RouteValueDictionary, RouteDirection)

确定 URL 参数是否包含此约束的有效值。

显式接口实现

IParameterLiteralNodeMatchingPolicy.MatchesLiteral(String, String)

将路由参数限制为仅表示非文件名值。 不验证路由值是否包含有效的文件系统字符,或者该值是否表示磁盘上的实际文件。

适用于