Créer un Service Simple avec l’API de Web ASP.NET MVC pour accéder à Windows Store et les applications de Windows Phone

À propos de l'auteur :

Cet article est fourni par . Microsoft est te remercie que MVP proactive de partager leur expérience professionnelle avec d’autres utilisateurs. L’article est comptabilisé ultérieurement sur le ou un .

API de Web ASP.NET

API de Web ASP.NET MVC 4 est une nouvelle fonctionnalité qui se trouve dans Visual Studio 2012.ASP.NET QU'API Web est une infrastructure qui permet au service HTTP de marque pouvant être consommée par une application web dans un navigateur web, une application de bureau ou l’application mobile. API de Web sont très utiles en tant que source de données pour l’application native comme application Windows Store ou Windows Phone. Format de sortie de l’API Web peut être XML, JSON ou l’autre. Dans cet article vous explique comment créer un service HTTP simple pour être consommés par une application Windows Store et Windows Phone

Créer une Solution vide

Voici les étapes de création d’une nouvelle Solution dans Visual Studio 2012 :

  1. Dans le menu, sélectionnez Fichier > Nouveau > projet.

  2. Dans la fenêtre du modèle, sélectionnez installé > Modèles > autres Types de projets > Solutions de Visual Studio.

  3. Choisissez Nouvelle Solution et indiquez le nom de HelloWorldSolution.

  4. Cliquez sur le bouton OK.

L’image suivante est un résultat qui peut être affiché dans l’Explorateur de solutions.

Créer le projet d’API Web ASP.NET MVC

Une fois une Solution vide, l’étape suivante est ajouter qu'un projet Web d’API dans le Solution.We pouvez ajouter projet d’API de Web ASP.NET MVC 4 en Solution en procédant comme suit :

  1. Cliquez avec le bouton droit sur Solution 'HelloWorldSolution' dans l’Explorateur de solutions

  2. Choisissez Ajouter > Nouveau projet.

  3. Dans le volet Modèles installés, sélectionnez Modèles > Visual C# > Web > Application Web de ASP.NET MVC 4.

  4. Remplissage HelloWorldWebAPI dans la zone de texte Nom.

  5. Cliquez sur le bouton OK.

  6. Sélectionnez Web API sur le modèle de projet ASP.NET MVC 4 volet, puis cliquez sur le bouton OK.

Les résultats peuvent être visibles dans l’Explorateur de solutions comme indiqué ci-dessous.

Ajout d’un contrôleur

Ensuite, nous fera une simple classe de contrôleur pour traiter la requête HTTP. Voici les étapes d’ajout d’un contrôleur :

  1. Cliquez avec le bouton droit sur le dossier du contrôleur, puis sélectionnez Ajouter > contrôleur.

  2. Dans le volet Ajouter un contrôleur, entrez un nom de HelloWorldController en tant que nom de classe de contrôleur.

  3. Dans les options de génération de modèles automatique de zone > modèle sélectionnez contrôleur d’API vide.

  4. Cliquez ensuite sur le bouton Ajouter.

Codes d’écriture HelloWorldController

Dans HelloWorldController.cs fichier sera ajouté deux méthodes comme indiqué dans l’exemple suivant.

using System;using System.Collections.Generic;using System.Linq;using System.Net;using System.Net.Http;using System.Web.Http;namespace HelloWorldWebAPI.Controllers{    public class HelloWorldController : ApiController    {        // GET api/HelloWorld        public string Get()        {            return "Hello World";        }        // GET api/HelloWorld/id        public string Get(string id)        {            return "Hello " + id;        }    }}

L’appel d’API Web à partir du navigateur Web

Pour appeler une API Web qui a été effectuée, nous pouvons faire ces étapes suivantes. Dans le menu, sélectionnez Débogage > Démarrer le débogage ou nous pouvons appuyez sur F5. Le résultat peut être considéré comme image suivante. Nous pouvons voir les résultats de la HelloWorldController.cs en accédant à cette url api/http://localhost:33011/HelloWorld/la réponse de la demande est au format JSON, et le contenu du fichier. La réponse de la demande sera différente si nous utilisons le Firefox comme navigateur web. Dans Firefox, la réponse de la demande est au format XML. Dans le contrôleur possède deux méthodes, l’accès à la méthode Get (id de la chaîne) peut être effectuée en accédant à cette url :

http://localhost:33011/api/HelloWorld/M Reza Faisal

Puis vous pouvez visualiser le résultat dans l’image ci-dessous.

Créer le projet Windows Store

Dans l’exemple précédent a montré comment appeler une API web depuis un navigateur web. Maintenant il montre comment créer une application du Windows Store pour accéder aux API de Web. Voici les étapes pour créer un projet de magasin de Windows :

  1. Première étape, ajoutez un projet à la solution, cliquez avec le bouton droit sur la Solution et sélectionnez Ajouter > Nouveau projet

  2. Dans le volet Ajouter un nouveau projet, sélectionnez installé > Visual C# > Windows Store > application vide (XAML)

  3. Dans la zone de texte Nom, tapez HelloWorldWS comme nom de votre projet

  4. Puis cliquez sur le bouton OK

Maintenant, nous pouvons voir HelloWorldWS projet dans l’Explorateur de solutions.

Appel des API Web à partir de l’Application du Windows Store

Ensuite, nous travaillerons sur MainPage.xaml. Dans le fichier MainPage.xaml sera ajouté bouton et TextBlock, comme dans l’illustration ci-dessous. Est une fonction de deux éléments :

  1. Bouton aura une fonction pour accéder à l’API Web.

  2. TextBlock affiche les résultats de l’action du bouton.

Voici le code dans le fichier MainPage.xamlet Voici le code dans MainPage.xaml.cs.

using System;using System.Collections.Generic;using System.IO;using System.Linq;using Windows.Foundation;using Windows.Foundation.Collections;using Windows.UI.Xaml;using Windows.UI.Xaml.Controls;using Windows.UI.Xaml.Controls.Primitives;using Windows.UI.Xaml.Data;using Windows.UI.Xaml.Input;using Windows.UI.Xaml.Media;using Windows.UI.Xaml.Navigation;using System.Net.Http;using System.Net.Http.Headers;namespace HelloWorldWS{    public sealed partial class MainPage : Page    {        private HttpClient hc;        public MainPage()        {            this.InitializeComponent();            hc = new HttpClient();            string uriStr = "http://localhost:33011/api/HelloWorld/";            if (!String.IsNullOrEmpty(TextBox_Name.Text))            {                uriStr = "http://localhost:33011/api/HelloWorld/" + TextBox_Name.Text;            }            hc.BaseAddress = new Uri(uriStr);            hc.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));        }        protected override void OnNavigatedTo(NavigationEventArgs e)        {        }        private async void Button_AccessWebAPI_Click(object sender, RoutedEventArgs e)        {            var response = await hc.GetAsync("api/HelloWorld/");            response.EnsureSuccessStatusCode(); // Throw on error code.            var result = await response.Content.ReadAsStringAsync();            TextBlock_Result.Text = result;        }    }}

Voici les étapes à exécuter l’application Windows Store avec Visual Studio 2012 :

  1. Cliquez avec le bouton droit sur le projet de magasin de Windows dans l’Explorateur de solutions

  2. Sélectionnez débogage > Démarrer une nouvelle Instance

Créer le projet de Windows Phone

Ensuite effectuera une simple application Windows Phone 7.5 pour accéder aux API du Web. Pour rendre les applications Windows Phone 7.5, nous allons utiliser le Visual Studio 2010 Express pour Windows Phone, car le modèle de projet Windows Phone n’est pas disponible encore dans Visual Studio 2012, lorsque cet article a été écrit. Voici les étapes de création d’un projet d’application Windows Phone :

  1. Dans le menu, sélectionnez Fichier > Nouveau projet.

  2. Dans le volet Modèles installés, sélectionnez Visual C# > Silverlight Windows Phone.

  3. Tapez HelloWorldWP comme nom du projet.

  4. Cliquez sur le bouton OK.

  5. Sélectionnez Windows Phone OS versions 7.1 sur l’option de Version de Windows Phone du système d’exploitation cible.

  6. Cliquez sur le bouton OK.

Nous pouvons voir les résultats comme indiqué ci-dessous.

L’appel de l’API Web à partir de Windows Phone

Ensuite, nous travaillerons sur MainPage.xaml. Dans le fichier MainPage.xaml sera ajouté bouton et TextBlock comme indiqué ci-dessous. Contenu du fichier MainPage.xaml et MainPage.xaml.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 Microsoft.Phone.Controls;namespace HelloWorldWP{    public partial class MainPage : PhoneApplicationPage    {        // Constructor        public MainPage()        {            InitializeComponent();        }        private void Button_AccessWebAPI_Click(object sender, RoutedEventArgs e)        {            WebClient wc = new WebClient();            string uriStr = "http://localhost:33011/api/HelloWorld/";                        if (!String.IsNullOrEmpty(TextBox_Name.Text))            {                uriStr = "http://localhost:33011/api/HelloWorld/"+TextBox_Name.Text;            }            Uri uri = new Uri(uriStr);            wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_GetTrends_DownloadStringCompleted);            wc.DownloadStringAsync(uri);        }        void wc_GetTrends_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)        {            try            {                TextBlock_Result.Text = e.Result;            }            catch (Exception ex)            {                TextBlock_Result.Text = ex.Message;            }        }    }}

Quel est le suivant ?

Cet article a présente brièvement des API Web ASP.NET MVC 4, l’article suivant explique plus sur l’API du Web.

Exclusion de contenu communautaire Solutions

MICROSOFT CORPORATION ET/OU SES FOURNISSEURS RESPECTIFS NE FONT AUCUNE DÉCLARATION SUR LA PERTINENCE, DE FIABILITÉ OU L’EXACTITUDE DES INFORMATIONS ET DES ÉLÉMENTS GRAPHIQUES ASSOCIÉS CONTENUS DANS LE PRÉSENT DOCUMENT. TOUTES CES INFORMATIONS ET ÉLÉMENTS GRAPHIQUES ASSOCIÉS SONT FOURNIS « EN L’ÉTAT » SANS GARANTIE D’AUCUNE SORTE. MICROSOFT ET/OU SES FOURNISSEURS RESPECTIFS EST EXCLUENT TOUTES LES GARANTIES ET CONDITIONS RELATIVES À CES INFORMATIONS ET LIÉS DES GRAPHIQUES, NOTAMMENT TOUS LES GARANTIES IMPLICITES DE QUALITÉ MARCHANDE, D’ADÉQUATION À UN USAGE PARTICULIER, EN TENANT EFFORT, DE TITRE ET DE NON-VIOLATION. VOUS RECONNAISSEZ SPÉCIFIQUEMENT QU’EN AUCUN CAS MICROSOFT ET/OU SES FOURNISSEURS EST RESPONSABLES DES DOMMAGES DIRECTS, INDIRECTS, PUNITIFS, OU ACCESSOIRES, SPÉCIALES, NI LES DOMMAGES QUELCONQUES Y COMPRIS, SANS LIMITATION, LES DOMMAGES POUR PERTE D’UTILISATION, DONNÉES OU BÉNÉFICES, DÉCOULANT D’OU EN AUCUNE FAÇON LIÉE À L’UTILISATION D’OU DE L’INCAPACITÉ À UTILISER LES INFORMATIONS ET LES ÉLÉMENTS GRAPHIQUES ASSOCIÉS CONTENUS DANS LE PRÉSENT DOCUMENT, BASÉ SUR LE CONTRAT, RESPONSABILITÉ DÉLICTUELLE, NÉGLIGENCE, RESPONSABILITÉ STRICTE OU AUTREMENT, MÊME SI MICROSOFT OU L’UN DE SES FOURNISSEURS A ÉTÉ INFORMÉ DE L’ÉVENTUALITÉ DE DOMMAGES.

Besoin d’aide ?

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoindre Microsoft Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×