2013-08-21 13 views
9

私はこのようなコード例を持っている:Request.QueryStringはどのように機能しますか?

location.href = location.href + "/Edit?pID=" + hTable.getObj().ID; ; //aspx  
parID = Request.QueryString["pID"]; //c# 

それは動作しますが、私の質問は - どのように?論理は何ですか? ありがとう:)

+1

[この](http://www.dotnetperls.com/querystring)では、QueryStringとそのASPでの使用法については、こちらを参照してください。net – Habib

+0

あなたはちょうどURLを分割する必要があると思いますか? split paramとして、=を使用して分割し、最後に2番目の分割項目を使用して辞書に移入します。それは私がどのようにわからないので、それは少し複雑ですか?と=がコード化されていますが、それは私が思う大まかな論理です –

+0

待って、使用法を尋ねていますか? –

答えて

14

HttpRequestクラスは、サーバーに行われた要求を表し、それに関連付けられたさまざまなプロパティを持っています(QueryStringなど)。

ASP.NETランタイムは、サーバーへの要求を解析し、この情報を入力します。

HttpRequest Propertiesには、ASP.NETによって代理処理される可能性のあるすべてのプロパティのリストがあります。

注:リクエストにクエリ文字列が含まれていない場合など、すべてのプロパティが入力されるわけではありません。QueryStringはnull /空になります。

if (!String.IsNullOrEmpty(Request.QueryString["pID"])) 
{ 
    // Query string value is there so now use it 
    int thePID = Convert.ToInt32(Request.QueryString["pID"]); 
} 
3

Requestオブジェクトは、いくつかのサーバーに送信要求全体である:だからあなたはあなたがクエリ文字列であることを期待すると、このようにそれを使用する前にそこに実際にあるかどうかを確認する必要があります。このオブジェクトには、 '?'の後に続くすべてのQueryString辞書が付属しています。 URLに

ないあなたは答えに探していたまさに確か、しかしhttp://en.wikipedia.org/wiki/Query_string

3
Request.QueryString["pID"]; 

をチェックアウトここで要求は、クライアントブラウザがHTTPリクエスト中にサーバーに渡された値を取得するオブジェクトですQueryStringは、HTTPクエリ文字列の変数値を取得するために使用されるコレクションです。

はQueryStringコレクションは、HTTPクエリ文字列内の変数の値を取得するために使用される http://msdn.microsoft.com/en-us/library/ms524784(v=vs.90).aspx

0

@詳細をお読みください。

HTTPクエリ文字列は、次のように、疑問符、以下の値で指定されている(?):クエリ文字列と

リンク

ラインは、上記の値とTXTという名前の変数を生成

「このクエリ文字列のテストです "。

クエリ文字列は、フォームの送信、またはユーザーがブラウザのアドレスバーにクエリを入力することによっても生成されます。

そして、このサンプルを参照してください。あなたがグーグルで詳細を収集することができhttp://www.dotnetperls.com/querystring

http://www.codeproject.com/Articles/5876/Passing-variables-between-pages-using-QueryString

はこれを参照してください。

1

クエリ文字列は、Webページに送信されるパラメータの配列です。

This url: http://page.asp?x=1&y=hello 

Request.QueryString[0] is the same as 
Request.QueryString["x"] and holds a string value "1" 

Request.QueryString[1] is the same as 
Request.QueryString["y"] and holds a string value "hello" 
+0

QueryStringパラメータを渡す唯一の方法は、(?) - sign? – user2560521

+1

Request.Form []は、フォームフィールドの入力を保持する別のコレクションです。しかし、QueryStringは、 "?" URLの構文。 – Metaphor

関連する問題