1. ホーム
  2. c#

Request["key"] vs Request.Params["key"] vs Request.QueryString["key"]の場合

2023-12-09 18:06:50

質問

Request["key"]Request.Params["key"]Request.QueryString["key"]

ベテランのプログラマはどちらの方法を使うのでしょうか? そしてその理由は?

どのように解決するのですか?

おすすめは Request.QueryString["key"] . とはあまり違いがありません。 Request["Key"] とはあまり違いがありませんが、クエリ文字列の場合は大きな違いがあります。 ServerVariables . Request["Key"] で値を探します。 QueryString にある値を探します。 Form を調べ、次に Cookie となり、最後に ServerVariables .

使用方法 Params を使うのは最もコストがかかります。params への最初のリクエストは、新しい NameValueCollection を作成し、それぞれの QueryString , Form , CookieServerVariables をこのコレクションに追加します。2 番目のリクエストの場合は Request["Key"] .

とはいえ、いくつかのキーに対するパフォーマンスの差は、かなり無視できるものです。ここで重要なのは、コードが意図を示すこと、そして Request.QueryString を使用することで、意図が明確になります。