最初に私が正しく意味することを説明しましょう:そこには多くの方法がありましたが、そのほとんどは文字列操作などを使用して終了します。私は、組み込み関数を使ってそのようなことを行う簡単な方法があるかどうかを知りたいと思います。URLパラメータを正しく変更するにはどうすればよいですか?
これまでのところ私はstring myNewValue
でURL
のパラメータを変更します。
Uri myUri = new Uri(URL);
var qs = HttpUtility.ParseQueryString(myUri.Query);
qs["ParameterName"] = myNewValue;
これはかなりうまく動作しません。今度はURL
を新しいパラメータでstring
に戻したいと思います。それを行う正しい方法は何ですか?私の元の文字列のパターンがなく、得られたパラメータをマージすると、URL
が得られますか?
注:1はそれからSubstring
ものに文字列内の文字を見つけるために開始したときこれまでのところ、私はSubstring
と、そのようなでそれを行うことができるよ、私はちょうどそれを「汚れ」を見つけます。
私は簡単です。元のURLからサブ文字列「?
」までは、qs.ToString()
感謝!!私は私の方法よりも好きです。あまりにも悪いことに、すべてのことをするクラスはありません...私は、URLからパラメータを置き換えることは一般的なものだと思っています... – Cher
はい、そうですが、彼らは 'stringの機能を重複しないようにしました。 Join() 'と' KeyValuePair.ToString() 'を呼び出します。あなたは 'Uri'に簡単な拡張メソッドを追加してあなたのためにそれを行うことができます。 –
私は[この人気のある質問](http://stackoverflow.com/q/829080/3195526)のソリューションを参照しています。私は 'UrlBuilder'が答えが書かれた時点で存在しなかったと仮定することができます。特に、この質問に対するコメントは、それが2013年に存在しなかったことを示唆している。 –