×
Namespaces

Variants
Actions
Revision as of 20:00, 16 December 2012 by chintandave_er (Talk | contribs)

Making a HTTP request and listening its completion in Windows Phone

From Nokia Developer Wiki
Jump to: navigation, search

This article include how to make HTTP request using WebClient and listening requst completion using EventHandler.

WP Metro Icon Wifi.png
WP Metro Icon WP8.png
SignpostIcon WP7 70px.png
Article Metadata
Tested with
SDK: WP 7.1 SDK
Compatibility
Platform(s): Windows Phone 7.5, 8
Windows Phone 8
Windows Phone 7.5
Article
Created: mandardac (04 Apr 2012)
Last edited: chintandave_er (16 Dec 2012)

Introduction

HTTPManeger.cs

    public class HTTPManager
{
private WebClient webdownloader;
private Uri uri;
public event EventHandler WebRequestCompleted;
public HTTPManager(string url)
{
webdownloader = new WebClient();
uri = new Uri(url);
}
public void MakeRequest()
{
webdownloader.DownloadStringCompleted += new DownloadStringCompletedEventHandler(DataDownloaded);
webdownloader.DownloadStringAsync(uri);
}
public void DataDownloaded(object sender, DownloadStringCompletedEventArgs args)
{
EventHandler handler = WebRequestCompleted;
if (handler != null)
{
handler(sender, args);
}
}
 
}

//now write another class which actully uses above class to make http request and wants to listen request completion

    public partial class MainPage : PhoneApplicationPage
{
private string loginurl;
// Constructor
public MainPage()
{
InitializeComponent();
MakeRequest();
}
private void MakeRequest() //you can call this method from any event eg.button click, for simplicity i called it from ctor.
{
string loginurl = "http://www.developer.nokia.com/Community/Wiki/Most_Viewed_Windows_Phone_Articles";
try
{
if (!System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable())
{
MessageBox.Show("N/W connection not available");
}
else
{
HTTPManager httpmanager = new HTTPManager(loginurl);
httpmanager.WebRequestCompleted += this.DownlLodCompleted;
httpmanager.MakeRequest();
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
public void DownlLodCompleted(object sender, EventArgs args)
{
MessageBox.Show("Your request is completed.....");
}
}
536 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×