1

OpenSearch製品の検索に使用する C# MVC 3 プロジェクトがあります。検索語が 1 語であれば検索は問題ありませんが、次のように入力するcanned foodHTTP Error 404.11. これを修正する簡単な方法の 1 つは、allowDoubleEscaping等号をtruein に設定することですwebconfig。しかし、私の友人は、 which をwithescaping urlに置き換えるものを使用するように提案してくれました(私がこれに慣れていないため、間違っている場合は修正してください)space%20

使用するように指示された多くの例を見てきましたがUrlPathEncode、このコードをプロジェクトのどこに追加すればよいかわかりません。

基本的に、私はこれをどのように作成できるかを尋ねているだけです:

localhost:94830/Home/Search/canned food

これに

localhost:94830/Home/Search/canned%20food 

またはスペースを別の文字に置き換えます

localhost:94830/Home/Search/canned-food
4

3 に答える 3

4

System.Uri.EscapeUriString次のように使用できます。

Uri.EscapeUriString("double  space") //double%20%20space

System.Webまた、「クライアント プロファイル」でも利用できるため、 APIを使用するよりも移植性が高くなります。

于 2012-08-15T05:04:56.807 に答える
0

HttpServerUtility.UrlEncode メソッドの助けを借りてそれを行うことができます

この例では、文字列 ' ASP.NET Examples ' は " ASP.NET+Examples "としてエンコードされます。

Server.UrlEncode("ASP.NET Examples");
于 2012-08-15T04:58:09.487 に答える