Use a WebClient to call a JSON web service. : WebClient « Communication « Silverlight






Use a WebClient to call a JSON web service.

Use a WebClient to call a JSON web service.
    

<UserControl x:Class='SilverlightApplication3.MainPage'
    xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' 
    xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'
    xmlns:d='http://schemas.microsoft.com/expression/blend/2008' 
    xmlns:mc='http://schemas.openxmlformats.org/markup-compatibility/2006' 
    mc:Ignorable='d' 
    d:DesignWidth='640' 
    d:DesignHeight='480'>

    <Grid x:Name="LayoutRoot" Background="White">
        <StackPanel x:Name="myStackPanel">
            <Button x:Name="myButton" Content="Request Content" Height="30" Width="120" Click="myButton_Click" />
        </StackPanel>
    </Grid>
</UserControl>


//File: Page.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

using System.Windows.Browser;

namespace SilverlightApplication3
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
        }

        private void RequestContent()
        {
            Uri address = new Uri("http://ws.geonames.org/findNearByWeatherJSON?lat=35.82&lng=-84.04");

            WebClient webClient = new WebClient();
            webClient.DownloadStringCompleted += new DownloadStringCompletedEventHandler(webClient_DownloadStringCompleted);
            webClient.DownloadStringAsync(address);                                 
        }

        void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)                                     
        {
            HtmlWindow window = HtmlPage.Window;
            window.Alert(e.Result);                                                 
        }

        private void myButton_Click(object sender, RoutedEventArgs e)
        {
            RequestContent();
        }
    }
}

   
    
    
    
  








Related examples in the same category

1.Using a WebClient to Download Resources on DemandUsing a WebClient to Download Resources on Demand
2.Load wmv file from in code with WebClient
3.Requesting some string content through the WebClient objectRequesting some string content through the WebClient object
4.Asynchronously requesting binary content using the WebClient classAsynchronously requesting binary content using the WebClient class
5.Use Cancel button triggers the cancellation.Use Cancel button triggers the cancellation.
6.Loading an image from a compressed package that was retrieved on demand