2015-01-10 7 views
-1

나는이 코드를 사용하려면 :WebClient를 해석 할 수없는 이유는 무엇입니까?

public void SendFile(string uri, string filepath) 
{ 
    using (var client = new WebClient()) 
    { 
     client.Headers.Add("Content-Type", "application/xml"); 
     byte[] response = client.UploadFile(uri, "POST", filepath); 
     return Encoding.ASCII.GetString(response); 
    } 
} 

을 ...하지만 난 지칠대로 지친 "형식 또는 네임 스페이스 이름 '웹 클라이언트가'을 (를) 찾을 수 없습니다 수 (당신이 누락 using 지시문 또는 어셈블리 참조를?) "

에 따르면 WebClient 은 .NET 3.5 (이것은 .NET 3.5/Windows CE 프로젝트)에서 사용 가능한입니다.

Visual Studio에서 WebClient를 인식하지 못하는 것으로 추측되는 Windows CE/Compact Framework 프로젝트이기 때문에 이러한 unfindability가 있습니까? 해결 방법이 있습니까 아니면 다시 운명입니까?

+7

한 번에 가능한 자신의 소스 파일을 복사 할 수 있는가? _ –

+0

링크에 따르면, 시스템에의 참조, 나는 참으로 참조하고, 나는 using System.Net을 가지고있다. " 너무. –

+0

그래, 다시 그 자리에서 ctacke의 코드를 사용하여 끝냈다. 나는 어딘가에 숨어 있었다. –

답변

1

MSDN 링크를 해석하는 방식은 완전히 잘못되었지만 이해할 수 있습니다.

Microsoft는 .NET Compact Framework/XNA/Silverlight를 "격리 된"방식으로 작성하기로 결정 했으므로 일반적인 MSDN 링크를 사용하여 이러한 찢어진 프레임 워크에서 클래스를 사용할 수 있는지 여부를 알 수 없습니다.

http://msdn.microsoft.com/en-us/library/w8xd02k7(v=vs.90).aspx

http://msdn.microsoft.com/en-us/library/ms172548(v=vs.90).aspx

그리고 비주얼 스튜디오는 스마트 WebClient 클래스가 존재하지 않는다는 것을 당신에게 그 해상도 규칙을 따르고있다.

CF를 목표로하는 개발자는 누락 된 클래스를 때릴 때 대안을 검색하고 때로는 일부 작업을 수행하기 위해 Mono의 소스 코드를 복사해야하는 운명에 처해집니다.

마이크로 소프트 개방형 소스 .NET의 핵심 소스 코드 때문에, 당신은 또한 당신이 사용 지시문 또는 어셈블리 참조가 _are https://github.com/dotnet/corefx