3

簡単な解決策のない簡単なタスクがあります。ブラウザに、変更または書き換えが必要なパラメータがあります

たとえば、www.contoso.com/countries.aspx?country=UK

URL をチェックせずにパラメーターを書き直すだけで、次のように表示されます。

www.contoso.com/countries.aspx?country=フランス

私はそのようなことを試みましたが、喜びはありませんでした

string parameter2 = Request.QueryString["country"];
Context.RewritePath(parameter2.Replace("?country=", "France"));
4

4 に答える 4

1

あなたはこのようなことをすることができます:

var url = "www.contoso.com/countries.aspx?country={0}";

var country = "UK";

url = String.Format(url, country);

または、次のことを行うことができます。

var url = Request.Url.AbsolutePath;

var country = Request.QueryString["country"];

url = url.Replace(country, "UK");

それで:

Response.Redirect(url);

于 2012-06-13T10:28:24.727 に答える
0

問題の解決策については、この詳細な回答をご覧ください。

于 2012-06-13T11:01:20.233 に答える
0

URL全体を文字列に読み取れないので、「?」で分割してください。次に、新しいビットを文字列の最初の部分に追加しますか?

このようなもの:

    var url = Request.QueryString;
    var newUrl = url.split('?');
    url = newUrl[0] + "?country=France";

それがうまくいくかどうかはわかりません、それは単なる考えです

于 2012-06-13T10:19:01.837 に答える
0

完全なクエリ文字列を置き換えたい場合は、使用します

newVal = string.LastIndexOf("?");

その後

URL.Replace(oldVal, newVal);

または、クエリ文字列にパラメーターが 1 つしかなく、その値のみを置き換えたい場合は、次を使用します。

newVal = string.LastIndexOf("=");
URL.Replace(oldVal, newVal);
于 2012-06-13T10:29:04.257 に答える