Share via


FileNameRouteConstraint 類別

定義

限制路由參數只代表檔名值。 不會驗證路由值是否包含有效的文件系統字元,或值代表磁碟上的實際檔案。

public ref class FileNameRouteConstraint : Microsoft::AspNetCore::Routing::IRouteConstraint
public class FileNameRouteConstraint : Microsoft.AspNetCore.Routing.IRouteConstraint
public class FileNameRouteConstraint : Microsoft.AspNetCore.Routing.IRouteConstraint, Microsoft.AspNetCore.Routing.Matching.IParameterLiteralNodeMatchingPolicy
type FileNameRouteConstraint = class
    interface IParameterPolicy
    interface IRouteConstraint
type FileNameRouteConstraint = class
    interface IRouteConstraint
    interface IParameterPolicy
type FileNameRouteConstraint = class
    interface IRouteConstraint
    interface IParameterPolicy
    interface IParameterLiteralNodeMatchingPolicy
Public Class FileNameRouteConstraint
Implements IRouteConstraint
Public Class FileNameRouteConstraint
Implements IParameterLiteralNodeMatchingPolicy, IRouteConstraint
繼承
FileNameRouteConstraint
實作

備註

此條件約束可用來釐清靜態檔案的要求與從應用程式提供的動態內容。

此條件約束會檢查值的最後一個URL路徑區段 (,以) 分隔 / ,判斷路由值是否代表檔名。 最後一個區段必須包含點 (.) 字元,後面接著一或多個非 (.) 字元。

如果路由值不包含 / ,則會將整個值解譯為最後一個區段。

FileNameRouteConstraint不會嘗試驗證值是否包含目前操作系統的法律檔名。

FileNameRouteConstraint不會嘗試驗證值是否代表磁碟上的實際檔案。

將比對為檔名-description 的路由值範例

  • /a/b/c.txt :最後一個區段包含 . 後面接著其他字元。
  • /hello.world.txt :最後一個區段包含 . 後面接著其他字元。
  • hello.world.txt :最後一個區段包含 . 後面接著其他字元。
  • .gitignore :最後一個區段包含 . 後面接著其他字元。

將拒絕為非檔名描述的路由值範例

  • /a/b/c :最終區段不包含 .
  • /a/b.d/c :最終區段不包含 .
  • /a/b.d/c/ :最後一個區段是空的。
  • :值是空的

建構函式

FileNameRouteConstraint()

限制路由參數只代表檔名值。 不會驗證路由值是否包含有效的文件系統字元,或值代表磁碟上的實際檔案。

方法

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

判斷 URL 參數是否包含對這個條件約束有效的值。

明確介面實作

IParameterLiteralNodeMatchingPolicy.MatchesLiteral(String, String)

限制路由參數只代表檔名值。 不會驗證路由值是否包含有效的文件系統字元,或值代表磁碟上的實際檔案。

適用於