1

ここで明らかな何かが欠けている可能性がありますが、複数の正規表現キャプチャグループを使用するルートをNancyFxで定義しようとしています。

Get[@"/campaign/(?<campaignid>[0-9]{1,8})/console(?<page>[0-9])/(?<personid>[0-9]{1,8})"]

正規表現は、URLのような正規表現テスターで機能します/campaign/12345/console1/123が、ナンシーでは常に404を取得します。

切り刻むとGet[@"/campaign/(?<campaignid>[0-9]{1,8})/console"]、その時点で機能するようになり、複数の名前付きグループが問題になっている可能性があると思います。これは、設計上、機能することを意味しますか?

4

1 に答える 1

3

技術的には、あなたが経験しているのは、ミドルキャプチャグループの前に文字列リテラルがあるために発生している(新しい)バグです。次のリリースでそれを見ていきます。これはもうすぐです。

幸い、簡単な回避策があります。パスを更新して、次のようにします。

@"/campaign/(?<campaignid>[0-9]{1,8})/(?:console(?<page>[0-9]))/(?<personid>[0-9]{1,8})"

そして、これはナンシーを少しだましますが、そのconsole部分をキャプチャしません:)

于 2012-10-09T05:35:21.300 に答える