web-dev-qa-db-ja.com

System.Web.HttpContextが認識されません

ASP.NETとC#Webアプリケーションがあります。作成したクラスの1つは、HttpContextを使用する必要があります。

http://msdn.Microsoft.com/en-us/library/system.web.httpcontext(v = vs.90).aspx によると、HttpContextはのSystem.Web名前空間に存在します。 NET 3.5(これはインストールしたバージョンです)。

ただし、HttpContextを記述するとき。 ->オートコンプリートが表示されません。これは、HttpContextが認識されないことを示しています。

宿題をして、通常の解決策を探しました。1. System.Web参照を追加しました([参照]を右クリックして[.NET]タブと特定の参照を選択します)。 2.また、クラスに次の行を含めるようにしました:using System.Web;

他に何ができるか教えてください。すべてがうまくいけば、HttpContextを作成します。 -ドロップダウンリストが表示され、そこからいくつかの属性/要素の中から「現在」を選択できるようになっています。私はC#とVisual Studio(2008)を初めて使用しますが、オートコンプリートがうまく機能しないことは、参照/名前空間/ロードエラー/その他の不足を示す良い指標だと思います。

30
Anna T

HttpContextクラスをインスタンス化する場合、コンストラクターはほとんど使用されません。常に静的プロパティHttpContext.Currentを使用します。これは、すべてのASP.Netアプリケーションで使用される現在のインスタンスです。

使用するには、System.Web.dllアセンブリへの参照を既に追加し、System.Web名前空間をインポートしてください。

39
CodeNotFound

適切なフレームワークを使用しないという単純なケースでした。つまり、デフォルトの「ライト」バージョンではなく、完全なファットバージョンを意味します。

[プロジェクト]を右クリックし、[プロパティ]をクリックして、最新バージョンのフルバージョンが選択されていることを確認します(例: '.NET Framework 4'、not '.NET Framework 4 Client Profile')。

5
userSteve
  1. アセンブリが含まれていることを確認してください
  2. Dllの参照がそこにあることを確認してください
  3. 「解決」を試して、Visual Studioに参照を含めます
  4. アプリケーションをデバッグして閉じ、再起動します。

このクラスは動作するはずです。

更新:

using System.Web

class YourClass {
  public YourClass() {
    HttpContext _context = new HttpContext(your parameters)
  }
}
3
iefpw

「Org.Apache.Http.Protocolを使用して」への参照を追加しました;私のためにそれを解決しました。

0
Buttman