[c#] System.Net.Http : 네임 스페이스에서 누락 되었습니까? (.net 4.5 사용)
TL; DR : 저는이 언어를 처음 사용하고 제가 무엇을하는지 모르겠습니다.
지금까지 내 수업은 다음과 같습니다.
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Web;
using System.Net;
using System.IO;
public class MyClass
{
private const string URL = "https://sub.domain.com/objects.json?api_key=123";
private const string data = @"{""object"":{""name"":""Title""}}";
public static void CreateObject()
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);
request.Method = "POST";
request.ContentType = "application/json";
request.ContentLength = data.Length;
StreamWriter requestWriter = new StreamWriter(request.GetRequestStream(), System.Text.Encoding.ASCII);
requestWriter.Write(data);
requestWriter.Close();
try
{
// get the response
WebResponse webResponse = request.GetResponse();
Stream webStream = webResponse.GetResponseStream();
StreamReader responseReader = new StreamReader(webStream);
string response = responseReader.ReadToEnd();
responseReader.Close();
}
catch (WebException we)
{
string webExceptionMessage = we.Message;
}
catch (Exception ex)
{
// no need to do anything special here....
}
}
static void Main(string[] args)
{
MyClass.CreateObject();
}
}
csc filename.cs를 수행하면 다음 오류가 발생합니다.
형식 또는 네임 스페이스 이름 ‘Http’가 네임 스페이스 ‘System.Net’에 없습니다 (어셈블리 참조가 누락 되었습니까?).
답변
HttpClient
에 살고 System.Net.Http
네임 스페이스.
다음을 추가해야합니다.
using System.Net.Http;
System.Net.Http.dll
.NET 4.5에서 참조하고 있는지 확인하십시오 .
게시 된 코드는 webClient
. 실제로 사용하여 컴파일하는 코드에 문제가 HttpWebRequest
있습니까?
최신 정보
참조 추가 대화 상자 를 열려면 솔루션 탐색기 에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 참조 추가 …를 선택 합니다. 다음과 같이 보일 것입니다.
답변
NuGet> Microsoft.AspNet.WebApi.Client 패키지
답변
내가 어떻게 해결했는지.
- 프로젝트 (!) “속성”을 열고 “응용 프로그램”을 선택하고 대상 프레임 워크 “.Net Framework 4.5″를 선택합니다.
- 프로젝트를 마우스 오른쪽 버튼으로 클릭-> 참조 추가
- “Assemblies”-> “Extensions”옵션 “System.Net.Http”가 선택 해제되어 있는지 확인하십시오.
- “Assemblies”-> “Framework”로 이동하여 “System.Net.Http”및 “System.Net.Http”옵션을 선택합니다.
- 그게 다야!
제 경우에는 2.0.0.0 버전의 .Net 4.0 및 “Assemblies”-> “Extensions”옵션 “System.Net.Http”가 처음에있었습니다. 내 작업 “Assemblies”-> “Framework”옵션 “System.Net.Http”및 “System.Net.Http”는 4.0.0.0 버전이 동일합니다.
답변
Visual Studio 패키지 관리자 콘솔> 설치 패키지 Microsoft.AspNet.WebApi.Client
답변
Visual Studio 10을 사용한다고 가정하면 여기에서 Visual Studio 10 용 System.Net.Http가 포함 된 설치를 다운로드 할 수 있습니다. VS10 용 MVC4 다운로드
설치가 완료되면 VS 프로젝트에서 참조 폴더를 마우스 오른쪽 버튼으로 클릭 한 다음 참조 추가 를 선택 합니다. 그런 다음 찾아보기 탭을 선택 하십시오. 받는 이동 어셈블리 (일반적으로 프로그램 파일 (86) / 마이크로 소프트 ASP.NET/ASP.NET MVC4 / 어셈블리에서) 설치 MVC4에 대한 설치 경로 및 어셈블리 이름 ‘System.Net.Http.dll’를 선택합니다. 이제 코드 상단에 ‘using System.Net.Http’를 추가하고 HttpClient 연결 생성을 시작할 수 있습니다.
답변
답변
사용하려는 클래스 System.Web.Http
가있는 어셈블리에 대한 참조가 HTTPClient
있어야합니다. 클래스 선언 앞에 아래 줄을 추가하십시오.
using System.Web.Http;
여전히 오류가 발생하면 다음에서 시도하십시오. Visual Studio
- 프로젝트의 References 폴더를 마우스 오른쪽 버튼으로 클릭하십시오.
- 참조 추가를 선택합니다.
- .NET 탭을 선택하거나 .NET Framework 어셈블리가 아닌 경우 찾아보기 단추를 선택합니다.
- 오류 메시지 (
System.Web.Http.dll
) 에서 네임 스페이스가 포함 된 어셈블리를 두 번 클릭합니다 . - OK 버튼을 누릅니다.