Request["key"]
対Request.Params["key"]
対Request.QueryString["key"]
経験豊富なプログラマーはどの方法を使用しますか? なぜ?
Request["key"]
対Request.Params["key"]
対Request.QueryString["key"]
経験豊富なプログラマーはどの方法を使用しますか? なぜ?
私はお勧めしRequest.QueryString["key"]
ます。クエリ文字列の場合は大きな違いはありませんRequest["Key"]
が、から値を取得しようとしている場合は大きな違いがありますServerVariables
。null の場合、、 then 、および finallyを参照Request["Key"]
して値を検索します。QueryString
Form
Cookie
ServerVariables
使用Params
するのが最もコストがかかります。params への最初のリクエストにより、新しい が作成され、 、、およびがそれぞれこのコレクションNameValueCollection
に追加されます。2 番目のリクエストでは、 よりもパフォーマンスが高くなります。QueryString
Form
Cookie
ServerVariables
Request["Key"]
いくつかのキーのパフォーマンスの違いはかなり無視できると言われています. ここで重要なのは、コードが意図を示す必要があり、使用Request.QueryString
すると意図が明確になることです。
Request.QueryString["key"]
コードリーダーがどこからデータを取得しているかを正確に知るのに役立つため、私は使用することを好みます。Request.Params["key"]
Cookie、クエリ文字列、およびその他のいくつかのものを参照できるため、使用しない傾向があります。そのため、ユーザーは少し考える必要があります。あなたが考えていることを誰かが理解するのに必要な時間が短いほど、コードの保守が容易になります。
HttpRequest.Params
またはRequest.Params
httprequestからほぼすべて(クエリ文字列、フォーム、Cookie、およびセッション変数)を取得しRequest.Querystring
ますが、クエリ文字列のみをプルします...すべてはその時点で何をしているかによって異なります。
コレクションは常に明示的に指定します。なんらかの理由で上書きを許可したい場合は、それぞれに「get」をコーディングし、どちらかを選択するための階層を示す明確なコードを記述します。IMO、明確なビジネス上の理由なしに複数のソースから値を取得するのは嫌いです。