1

次のような引用符で囲まれた文字列を含む URL の一部として、アプリケーションに要求を送信する必要があります。

/search/"my query"

次の質問で説明されているように、これはエラーをスローしています。

ルートパラメータとして引用符を含める方法は? 「パスに不正な文字があります」というメッセージが表示される

Scott Hanselman の提案を実装して、

<httpRuntime requestPathInvalidCharacters="&lt;,&gt;,*,%,:,&amp;,\" />

引用符を含まない値。しかし、これは .net 3.5 では利用できないようです。

誰かがこれを機能させる方法を指摘できますか?

4

1 に答える 1

2

http://forums.asp.net/t/1335994.aspx/1によると、引用符 (" または %22) 文字を含むパスはマップ パス経由でルーティングできません。幸いなことに、引用符はクエリ文字列パラメーターでサポートされています。

たとえば、ルート パスを使用してナビゲートする代わりに/search/"my query"、クエリ文字列 パス を使用してそこに到達できます/search?query="my query"

または、(おそらく SEO の理由で) マップ パスを保持することに本当に設定されている場合は、IIS URL Rewrite拡張機能のようなものを使用して、ユーザーが賢明になることなく、そのパスを対応するクエリ文字列にルーティングできます。

于 2012-12-11T08:30:43.370 に答える