次の方法で共有


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 パス セグメント (で /区切られた) を調べます。 最後のセグメントには、ドット (.) 文字の後に 1 つ以上の non-(.) 文字が続く必要があります。

ルート値に が含 / まれていない場合、値全体が最後のセグメントとして解釈されます。

では 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)

ファイル名の値のみを表すルート パラメーターを制約します。 ルート値に有効なファイル システム文字が含まれていること、または値がディスク上の実際のファイルを表していることを検証しません。

適用対象