현재 컨텍스트에 HttpUtility가 없습니다.


98

C # 애플리케이션을 컴파일 할 때이 오류가 발생합니다. 사소한 오류처럼 보이지만 해결할 수 없습니다.

내 설정은 Windows 7 64 비트입니다. Visual-Studio 2010 C # express B2Rel.

에있는 System.Web.dll에 대한 참조를 추가 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0했지만 노란색 느낌표가 있고 여전히 위의 오류가 발생합니다. 나는 또한 using System.Web선언이 있습니다.

내가 뭘 잘못하고 있죠?


업데이트 : 근본 원인을 알려주는 프롬프트 응답을받은 후 Google에서 System.Web.dll이 전체 ​​프레임 워크를위한 것이라고 설명하는 위치를 조금 검색했습니다. 나는 그러한 참조를 찾지 못했습니다.
저와 같은 초보자를 위해이 블로그는 프레임 워크 (클라이언트 및 전체)의 차이점을 멋지게 요약합니다. 특정 Dll이 클라이언트 프레임 워크에서 지원되는지 여부를 나타내는 지점을 찾을 수 없습니다. Visual Studio의 느낌표가 첫 번째 신호 여야한다고 생각합니다.


2
고객 프로필을 타겟팅하고 있습니까?
SLaks

답변:


87

System.Web.dll사용할 수없는 클라이언트 프로필을 타겟팅하고있을 것입니다 .

프로젝트의 속성 에서 전체 프레임 워크를 대상으로 지정할 수 있습니다 .


13
빙고! 어디에 지정되어 있습니까? 이걸 어디서 읽어야했는데? 감사.
Shaihi 2010 년

프로젝트 속성에서 전체 프레임 워크를 설정했지만 문제가 있습니다.
알렉스 졸릭

@AlexJolig : 참조와 네임 스페이스가 있는지 확인하십시오.
SLaks

@ blackholeearth0_gmail : 뭐가 문제 야? 무엇을 목표로 삼고 있습니까?
SLaks

프로젝트를 .net2에서 .net4로 변환했습니다. Target Framework를 변경하는 것만으로는 문제가 해결되지 않았습니다. 나도 dll을 추가해야했습니다. 그것은 lxk613의 대답에서 더 잘 설명되고 문제를 해결하기 위해해야 ​​할 일을 보여줍니다.
bh_earth0 2015

187

System.Web참조 를 추가해야합니다 .

  1. 솔루션 탐색기에서 "참조"를 마우스 오른쪽 단추로 클릭하십시오.
  2. "참조 추가"를 선택하십시오.
  3. ".NET"탭이 선택되었는지 확인하십시오.
  4. "System.Web"을 검색하여 추가합니다.

.NET Framework 4.5를 대상으로하는 VS2012 콘솔 앱. 이것은 해결되었습니다.
Kyle

대상이 있더라도 참조를 추가하는 것만으로도 효과적이었습니다. 감사합니다 lxk613
João Bruno Abou Hatem de Liz

빙고! 이것이 답입니다.
Alper

내 솔루션 탐색기 트리은 "참조"가 포함되어 있지 않습니다
폴 Gorbas

Azure 함수를 사용하는 경우 파일 위에 #r "System.Web"을 추가합니다
Irshad Mohamed

17

SLaks는 정답을 가지고 있습니다 ...하지만 이것에 짜증이 나서 바로 찾을 수없는 저와 같은 사람들을 위해 좀 더 구체적으로 말씀 드리겠습니다.

프로젝트-> 속성-> 응용 프로그램-> 대상 프레임 워크-> ".Net Framework 4"선택

그러면 프로젝트가 저장되고 다시로드됩니다.


6
전체 프레임 워크를 대상으로해도 오류가 발생했습니다! System.Web.dll을 참조로 추가하면 작동했습니다.
SteveCav

그리고 분명히 문제의 파일에 System.Web또는 추가했는지 확인하십시오 System.Web.Mvc.
TankorSmash

15

이 문제를 해결하려면 아래 경로로 이동하십시오.

프로젝트-> 속성-> 응용 프로그램-> 대상 프레임 워크

프레임 워크를 ".NET Framework 4"로 변경합니다.

이렇게하면 프로젝트가 닫히고 다시 열립니다.

이렇게하면 오류가 해결됩니다.

(그러나 어떤 이유로 @Karan Modi의 대답은 ...)

다음으로 솔루션 탐색기에서 참조 탭을 마우스 오른쪽 버튼으로 클릭하고 참조 추가를 선택합니다.

"System.Web"을 선택합니다.

( "System.Web을 사용하여 네임 스페이스를 직접 선언"하는 것만으로는 충분하지 않은 것 같습니다. 솔루션 탐색기에 추가해야합니다 ... 이유를 이해할 수 없습니다. 제가 코볼 프로그래머이기 때문에 놀라운 일이 아닙니다 ..


12

위의 답변을 따른 후

프로젝트-> 속성-> 응용 프로그램-> 대상 프레임 워크-> ".Net Framework 4"선택


Project -> Add Reference
그리고 선택 하기 전까지는 여전히 작동하지 않았습니다 System.web. 그리고 모든 일이 매력을 연결합니다.


2 년 전 누군가가 이미 동일한 솔루션을 제공했습니다. 직접 게시하기 전에 솔루션을 확인하십시오. 질문이 너무 오래되어 원본 포스터가 귀하의 답변을 알아 차릴 가능성이 적습니다.
Techie

lxk613의 대답 @처럼 보인다
Shaihi

8

이 문제를 해결하려면 아래 경로로 이동하십시오.

프로젝트-> 속성-> 응용 프로그램-> 대상 프레임 워크

프레임 워크를 ".NET Framework 4"로 변경합니다.

이렇게하면 프로젝트가 닫히고 다시 열립니다.

이렇게하면 오류가 해결됩니다.


Mac에서 Target Framework max (mono 덕분에)는 .NET 2입니다. 여기서 어떻게 해결할 수 있습니까?
Chris M

4

Agrega System.web a las referencias del proyecto.

[편집하다]

Google 번역에 따르면 다음과 같이 번역됩니다.

프로젝트 참조에 System.Web을 추가합니다.


1

내가 한 것과 같은 문제가 있었고 Microsoft.NET 프레임 워크에서 web.dll을 복사 한 다음 프로젝트의 루트에 붙여 넣은 다음 dll 참조를 앱에 추가하면 작동했습니다.



0

다음 프로세스를 통해 작동했습니다.

참조 추가 :

system.net
system.web

또한 네임 스페이스를 포함합니다.

using system.net
using system.web
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.