2009-12-18 6 views
1

Je travaille sur la conversion d'une application VB6 en application C#. Voici ce que je dois faire.net Equivalent de MSXML2.XMLHTTP40

Public Function SendData(sUsername as string ,sPassword as string, url as string , message as string) As Boolean 

Dim XMLHttpRequest As MSXML2.XMLHTTP40 
Set XMLHttpRequest = New MSXML2.XMLHTTP40 

XMLHttpRequest.Open "GET", g_SonyFeedURL, True, sUsername, sPassword 
XMLHttpRequest.setRequestHeader "Synchronous", "False" 
XMLHttpRequest.setRequestHeader "Content-Type", "text/xml" 
XMLHttpRequest.setRequestHeader "Accept-Language", "en-US" 
dtStart = Now 
XMLHttpRequest.send 
Do While XMLHttpRequest.ReadyState <> 4 
      DoEvents    
      TimeOut = DateDiff("s", dtStart, Now) 
      If TimeOut >= WaitTime Then 'Wait 
       Exit Do 
      End If 
     Loop 
End function 

Maintenant, je comprends que je peux faire ce qui précède en utilisant HttpWebRequest mais pas en mesure de comprendre comment envoyer le nom d'utilisateur et mot de passe ou en d'autres termes ce serait C# équivalent de

"XMLHttpRequest.Open" GET ", g_SonyFeedURL, True, sUsername, sPassword"

et DoEvents afin que je puisse le faire attendre quelques minutes et si je ne reçois pas une réponse annuler la demande?

Des suggestions?

Merci.

Répondre

0

Vous pourriez sortir avec l'utilisation de la classe WebClient, bien que je ne l'ai pas regardé depuis les 1.1 jours. Il ne devrait pas être différent de la requête 'ajax' faite par XmlHttpRequest - après tout, tout est GET/POST sur HTTP.