2012-05-23 3 views
0

MSXML2 API를 사용하여 C#에서 비동기 HTTP 콜백이 작동하도록하고 싶습니다. winform을 통해 이것을 호출합니다.비동기 MSXML2 XMLHTTP 코드 숨기기에서 요청

 x = new MSXML2.XMLHTTPClass(); 
     x.open("POST", "http://localhost/MyHandler.ashx", true, null, null); 
     x.send("<test/>"); 
     x.onreadystatechange = ???? //// What to specify here in C#? 
     var response = x.responseText; //// Works great synchronous! 

익명 대리인 인 익명 대리인을 시도했지만 아무 것도 작동하지 않았습니다! 슬프게도 인터넷에이 VB.NET Module driven solution이 존재하지만 어떻게 C#에서 할 수 있는지 잘 모르겠습니다.

도움이 될 것입니다.

답변

1
try { 
      System.Net.HttpWebRequest oHTTPRequest = System.Net.HttpWebRequest.Create("URL of Request") as System.Net.HttpWebRequest; 
      System.Net.HttpWebResponse oHTTPResponse = oHTTPRequest.GetResponse as System.Net.HttpWebResponse; 
      System.IO.StreamReader sr = new System.IO.StreamReader(oHTTPResponse.GetResponseStream); 
      string respString = System.Web.HttpUtility.HtmlDecode(sr.ReadToEnd()); 
     } 
     catch (Exception oEX) 
     { 
      //Log an Error 
     } 
    } 
1

WinForms 응용 프로그램에서는 WebRequest을 대신 사용하십시오. 기본적으로 같은 방식으로 작동합니다.