ASP.NET MVC 5 et Web API 2

Preview:

DESCRIPTION

La plateforme Web Microsoft ne cesse d'évoluer. La sortie de Visual Studio 2013 s'accompagne d'ASP.NET MVC5 et Web API 2, qui apportent chacunes leurs lots de nouveautés ! Dans cette session, vous découvrirez toutes les nouvelles APIs et nouveaux outils pour développer des applications Web avec Visual Studio 2013. Speakers : Simon Ferquel (Infinite Square), Julien Corioland (Infinite Square)

Citation preview

ASP.NET MVC 5 et Web API 2

Julien CORIOLANDTech Lead Web &

CloudInfinite Square

@beedoo

http://www.infinitesquare.com http://blogs.infinitesquare.com

Simon FERQUELSenior DeveloperInfinite Square@sferquel

#mstechdays

• Société de conseil, expertise, réalisation, formation, spécialisée dans le développement d’applications logicielles innovantes sur les technologies Microsoft

• 100% des consultants certifiés Microsoft, parmi lesquels 10 MVP et 2 Nokia Champions

• GOLD Certified Partner sur 5 domaines de compétences

• Centre de formation agrée

Infinite Square – stand 19

#mstechdays

• Quelques rappels rapides

• Quoi de neuf pour ASP.NET MVC 5(.1) et Web API 2(.1) : plein de démos !

• Le futur est dans OWIN !

• Conclusion / Questions

Agenda

#mstechdays

QUELQUES RAPPELS

Parce que revoir les bases, ça ne fait jamais de mal !

#mstechdays

ASP.NET MVC

Contrôleur

Modèle

Vue

ModelBinders

ViewModels

Annotations

Validators

HTML Helpers

Razor / ASPX

jQuery

Action Results

Actions

Filters

Routes

#mstechdays

ASP.NET Web API

  

Réception d’une requête HTTP (GET, POST, PUT, DELETE, HEAD)

Résolution de la route / Invocation de l’action du contrôleur

Content-Negociation (Accept HTTP Header)

Renvoi de la réponse dans le bon format

#mstechdays

QUOI DE NEUF DANS ASP.NET MVC 5 ET WEB API 2A chaque nouveauté sa démo !

#mstechdays

One ASP.NET

ASP.NET

MVCWeb

PagesWeb

FormsSPA

Web API

SignalR

Sites Services

#mstechdays

One ASP.NET dans Visual Studio 2013

démo

#mstechdays

ONE ASP.NET & VISUAL STUDIO 2013

#mstechdays

ASP.NET Identity• Nouveau système de memberships

d’ASP.NET

• Authentification basée sur des claims

• Utilise des middlewares d’authentification OWIN

#mstechdays

ASP.NET Identity• Nouveau schéma

de stockage des utilisateurs

– Multi-logins

– Microsoft propose une implémentation EF Code First

– Totalement personnalisable

démo

#mstechdays

ASP.NET IDENTITY

#mstechdays

Attribute Routing• Configuration des routes à

l’aide d’attributs– Directement sur les contrôleurs /

actions– Evalués et mis en cache dans la table

de route au démarrage de l’application

• Pas de limitation par rapport à la définition des routes « traditionnelles »

• On peut mixer les deux

• Marche aussi avec Web API 2 !

démo

#mstechdays

ATTRIBUTES ROUTING

#mstechdays

Web API Batching• Permet de combiner plusieurs opérations

dans une seule requête http POST

– Réduction du trafic réseau– Récupération de données plus adaptés aux interfaces

modernes / riches

démo

#mstechdays

WEB API BATCHING

#mstechdays

Web API OData• Permet d’exposer une Web API via OData, à

l’aide d’un simple attribut « Queryable »

• Quelques nouveautés avec Web API 2 :– $select, $expand, $batch, $value– Possibilité d’étendre les formatters Odata– Possibilité d’utiliser un modèle de données déjà existant

démo

#mstechdays

WEB API ODATA

#mstechdays

OWIN : c’est quoi ?• Open Web INterface• Abstraction du serveur webASP.Net

Web APIASP.Net

MVCSignalR ...

OWIN+ middlewares…

IISHttp

Listener

Unit test host

#mstechdays

OWIN : et les middlewares, c’est quoi ?• Composants techniques

– Logs– Authentification– Compression– Rewriting…

• Compatibles avec n’importe quel host (IIS, Self Host, custom…)

• Compatibles avec n’importe quel Framework applicatif supportant Owin (ASP.Net WebForm, Web API, MVC, NancyFX, Signalr…)

• Out of the box:– OAuth2– CookieAuth– Facebook– Google…

démo

#mstechdays

OWIN : MIDDLEWARE DE LOGS ET AUTHENTIFICATION WEB API

#mstechdays

OWIN-host alternatifs ?• OWIN fournit des interfaces pour créer son

propre host• Microsoft en fournit 3 :– Host IIS

• Hébergement web classique

– http listener• Embarqué, agent local, communication inter-processus

– Unit test• Faciliter les tests unitaires

démo

#mstechdays

OWIN ET TESTS UNITAIRES

#mstechdays

Petit bonus : MVC 5.1 / Web API 2.1• Support des énumérations dans les vues

– Display Name, DropDownListFor

• Unobtrusive validation pour MaxLength / MinLength

• Possibilité de passer des html attributs aux EditorFor (enfin! )

• MediaTypeFormatter pour BSON

#mstechdays

Conclusion / Questions• Pas forcément énormément de nouveauté en terme

de fonctionnalités dans ASP.NET MVC 5 et Web API 2, mais…

• Enormément de nouveautés « transverses » avec OWIN, ASP.NET Identity et surtout : « One ASP.NET ».

• Code source & démos : https://github.com/simonferquel/techdays-paris-2014-mvc-webapi

• A vos questions !

#mstechdays

Depuis votre smartphone sur :http://notes.mstechdays.fr

De nombreux lots à gagner toute les heures !!!Claviers, souris et jeux Microsoft…

Merci de nous aider à améliorer les Techdays !

Donnez votre avis !

© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Digital is business

Recommended