ASP.Net Web API - Léonard Labat (18 février 2014)SOAT
HTTP est un protocole simple à comprendre, simple à utiliser et c’est cette simplicité qui le rend disponible sur un grand nombre de plate-forme. REST, de son côté, est un style d’architecture qui permet d’exposer facilement une API en utilisant HTTP et différents types de représentations de données tels que JSON ou XML.
ASP.NET Web API est une évolution de WCF pour écrire une couche d’API REST, en utilisant un modèle de programmation proche d’ASP.NET MVC. Cette soirée 3T sera l’occasion pour vous de découvrir les fonctionnalités offertes par ASP.NET Web API qui font que c’est une technologie qu’il faut envisager d’utiliser lorsque vous devez créer une API REST.
ASP.Net Web API - Léonard Labat (18 février 2014)SOAT
HTTP est un protocole simple à comprendre, simple à utiliser et c’est cette simplicité qui le rend disponible sur un grand nombre de plate-forme. REST, de son côté, est un style d’architecture qui permet d’exposer facilement une API en utilisant HTTP et différents types de représentations de données tels que JSON ou XML.
ASP.NET Web API est une évolution de WCF pour écrire une couche d’API REST, en utilisant un modèle de programmation proche d’ASP.NET MVC. Cette soirée 3T sera l’occasion pour vous de découvrir les fonctionnalités offertes par ASP.NET Web API qui font que c’est une technologie qu’il faut envisager d’utiliser lorsque vous devez créer une API REST.
Asp.net Tutorials de L'application "Organizer"Nazih Heni
Dans le but d’apprendre le Framework ASP.NET MVC 2.0 j'ai réaliser une petite application sur « Visual Studio » d'un bout à l'autre, ce qui donne l'occasion d'illustrer différents concepts à la base d’ASP.NET MVC 2.0.
L’application que j'ai réaliser s’appellera «Organisez». Il s’agit d’un site web pour faciliter la recherche et l’organisation d’un événement.
------------------------------------
lien du Blog : http://nazihhenie.wordpress.com/
Vous allez voir comment collecter des informations JSON (ou autre) venant de différentes instances d’applications mobiles sur une ferme Web, agréger ces données sous formes de fichiers dans le nuage (blobs). Vous allez également voir comment créer par script un cluster Hadoop en tant que service, comment lui soumettre un script à la SQL (HIVE) pour analyser les données ainsi collectées avant de détruire le cluster. Enfin, vous alllez voir comment récupérer les résultats (sans que le cluster Hadoop ait besoin d’être allumé) dans Excel Power Query, pour alimenter un modèle Power Pivot et visualiser le résultat sur une carte dans Power View.
Ces différentes parties sont relativement indépendantes. Elles peuvent être réutilisées indépendamment les unes des autres. Ensemble, elles constituent une solution de type cloud hybride, où des applications mobiles situées par définition à des endroits très divers envoient des données dans le cloud pour analyse avant visualisation dans les murs de l’entreprise (Excel).
Le cloud hybride, cela peut correspondre à des solutions aussi concrètes que cela !
Après une définition de l'Ambient Intelligence, une présentation des techniques & contraintes qui y sont liées, nous montrerons l'utilité du Big Data au travers d'un cas concret. Ce sera l'occasion de voir le développement .NET autour des Web API, No SQL (Mongo DB, Cassandra & Hadoop), Azure associés aux objets connectés.
Asp.net Tutorials de L'application "Organizer"Nazih Heni
Dans le but d’apprendre le Framework ASP.NET MVC 2.0 j'ai réaliser une petite application sur « Visual Studio » d'un bout à l'autre, ce qui donne l'occasion d'illustrer différents concepts à la base d’ASP.NET MVC 2.0.
L’application que j'ai réaliser s’appellera «Organisez». Il s’agit d’un site web pour faciliter la recherche et l’organisation d’un événement.
------------------------------------
lien du Blog : http://nazihhenie.wordpress.com/
Vous allez voir comment collecter des informations JSON (ou autre) venant de différentes instances d’applications mobiles sur une ferme Web, agréger ces données sous formes de fichiers dans le nuage (blobs). Vous allez également voir comment créer par script un cluster Hadoop en tant que service, comment lui soumettre un script à la SQL (HIVE) pour analyser les données ainsi collectées avant de détruire le cluster. Enfin, vous alllez voir comment récupérer les résultats (sans que le cluster Hadoop ait besoin d’être allumé) dans Excel Power Query, pour alimenter un modèle Power Pivot et visualiser le résultat sur une carte dans Power View.
Ces différentes parties sont relativement indépendantes. Elles peuvent être réutilisées indépendamment les unes des autres. Ensemble, elles constituent une solution de type cloud hybride, où des applications mobiles situées par définition à des endroits très divers envoient des données dans le cloud pour analyse avant visualisation dans les murs de l’entreprise (Excel).
Le cloud hybride, cela peut correspondre à des solutions aussi concrètes que cela !
Après une définition de l'Ambient Intelligence, une présentation des techniques & contraintes qui y sont liées, nous montrerons l'utilité du Big Data au travers d'un cas concret. Ce sera l'occasion de voir le développement .NET autour des Web API, No SQL (Mongo DB, Cassandra & Hadoop), Azure associés aux objets connectés.
Workshop Fonctionnel - Mecanisme surveillance uniqueNovencia Groupe
En 2009, au plus fort de la crise financière, le G20 a voulu la mise en place de systèmes de régulation et de supervision du secteur financier mondial.
En octobre 2013, le Parlement européen a adopté le règlement sur le Mécanisme de Surveillance Unique qui prévoit qu’à compter du 4 novembre 2014, la supervision des banques européennes (6000 banques) se fera sous l’autorité de la BCE, avec une structure propre, afin de distinguer cette activité de la politique monétaire.
Nous vous proposons de faire un point d’étape sur :
- la mise en œuvre de ces textes
- les impacts opérationnels
- les enjeux sur le SI
- les nouveaux reportings attendus
Workshop Fonctionnel - TITRISATION : LE RETOURNovencia Groupe
Cette technique de refinancement connaît depuis 2012 un regain d’intérêt pour les grands établissements de la Place. Des textes IFRS et Bâle 3 viennent toutefois encadrer les traitements prudentiels et les modalités de consolidation.
Après un bref rappel de ces nouvelles contraintes, une présentation sur un cas concret avec un spécialiste du sujet vous sera proposée, avec la démarche, les problématiques data, un focus juridique et le suivi des dénouements.
Connaissez-vous les ACRONYMES FINANCIERS de 2014 ?
Plus que jamais, nos métiers de la Finance se trouvent encadrés par des réglementations denses et un langage technique induit.
Nous vous proposons de parcourir au travers des nouveaux dispositifs l’ensemble des nouveaux concepts et les acronymes associés, afin de décrypter les vrais objectifs des Autorités bancaires :
• Les réglementations : leurs innovations
• Les acteurs clés
• Les thématiques avec leurs enjeux
• Les points d’application en terme de système d’information
2. Utilisation d'une API Web avec ASP.NET MVC 3
Nous allons voir quelles sont les étapes à suivre pour utiliser une API Web WCF au sein d'une
application MVC.
Tout d'abord, créons un projet de type Application Web ASP.NET MVC3 que l'on va appeler
ArtistManager.
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 2
3. Utilisation d'une API Web avec ASP.NET MVC 3
On sélectionne le modèle vide et on conserve le moteur de vue Razor.
Une fois le projet créé, on effectue un clic-droit → Propriétés → Web. Dans la partie Serveurs, on
indique un port spécifique (Exemple : 1402).
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 3
4. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
La prochaine étape consiste à installer un paquet de création d'API Web par l'intermédiaire de
NuGet.
NB : Si vous n'avez toujours pas installé NuGet sur votre machine, je vous suggère de lire ce tutoriel
d'Hinault Romaric DONFACK qui détaille toutes les informations relatives à ce sujet.
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 4
5. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
Pour cela, nous allons cliquer sur Outils → Library Package Manager → Add Library Package
Reference, rechercher le paquet WebApi.All, et l'installer.
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 5
6. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
Une fois l'installation effectuée, vous pouvez remarquer que des références ont été ajoutées à
votre projet.
Nous sommes désormais prêt à construire notre API Web.
Dans un premier temps, nous allons créer un dossier API qui contiendra nos classes API.
Au sein de ce dossier, nous allons ajouter une nouvelle classe API que l'on va appelée ArtistApi.
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 6
7. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
A ce stade, vous devriez avoir ce code dans votre classe :
On va la modifier en y ajoutant l'attribut ServiceContract afin d'indiquer à l'API Web que cette
classe peut être exposée en tant que service.
Cet attribut nécessite l'espace de noms System.ServiceModel.
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 7
8. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
Maintenant, nous allons enregistrer dans le fichier Global.asax.cs.
Ajoutez les espaces de noms suivants :
Dans la méthode RegisterRoutes, il va falloir ajouter le bout de code suivant afin d'enregistrer une
route pour notre nouvel API Web :
routes.Add(new ServiceRoute("api/artists", new HttpServiceHostFactory(), typeof(ArtistApi)));
Vous devriez avoir :
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 8
9. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
La classe ServiceRoute permet de créer un itinéraire de service sur HTTP pour la prise en charge
de scénarios REST. Elle prend 3 paramètres : un préfix d'itinéraire, une instance de classe
HttpServiceHostFactory et un type de service.
Nous allons implémenter une classe POCO Artiste qui contiendra les informations qui seront
passés via l'API. Il s'agit essentiellement d'un DTO (Data Transfer Object) mais en HTTP on
considère que cette entité est représentée par une « Ressource ». Nous créerons également une
méthode qui exposera notre ressource. Cela permettra à de multiples clients d'accéder à la
ressource.
Comme fait précédemment, on va créer un dossier Ressources qui contiendra l'ensemble de nos
ressources et y ajouter une classe Artist contenant le code suivant :
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 9
10. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
Dans la classe ArtistApi, il va falloir ajouter les espaces de noms suivants :
Ainsi que la méthode Get suivante permettant de rapatrier les artistes :
Ici, l'attribut WebGet indique à l'API Web que cette méthode doit être exposée en tant que
requête HTTP GET.
On prend soin de passer une chaîne vide à l'UriTemplate.
En effet, nous avons déjà définit la route de notre URL dans le Global.asax.
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 10
11. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
D'ailleurs, vous pouvez vérifier que tout fonctionne et que votre liste d'artistes vous est renvoyée
en vous rendant à l'URL suivante : http://localhost:1402/api/artists
Afin de tester leurs fonctionnalités, les Web API contiennent un module de test côté client que l'on
peut configurer en créant une instance de HttpConfiguration dans la méthode RegisterRoutes :
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 11
12. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
Il faudra ensuite passer cette instance au HttpServiceHostFactory de la route du Web API que
nous avions créé précédemment.
routes.Add(new ServiceRoute("api/artists", new HttpServiceHostFactory() { Configuration =
config }, typeof(ArtistApi)));
On relance le projet, puis on se rend à l'URL suivante : http://localhost:1402/api/artists/test
Ce qui nous amène sur la page de test.
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 12
13. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
Lorsque l'on clique sur notre ressource, cela a pour effet de remplir les champs Request et
HTTP/1.1
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 13
14. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
On clique sur le bouton Send pour afficher la réponse de la requête GET :
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 14
15. Utilisation d'une API Web avec ASP.NET MVC 3 (suite)
On peut également récupérer la liste des Artistes au format JSON en passant la valeur «
application/json » au paramètre Accept du champ Header :
21/02/2012 Groupe NOVENCIA - 25 Rue de Maubeuge 75009 PARIS - Tél. : 01 44 63 53 13 - Fax : 01 44 63 53 14 - www.novencia.com - contact@novencia.com 15