ASP.NET MVC 4 beta : introduction de l’API Web et améliorations de Razor

ASP.NET MVC 4 vient de franchir une nouvelle étape dans son cycle de développement. Microsoft vient de publier la version Beta du framework Web open source fondé sur ASP.NET.

En dehors des nouveautés disponibles dans la version Developper Previw publiée en septembre dernier dont le support des plateformes mobiles, le rendu adaptatif, View Switcher, des nouveaux modèles de projet Web, etc. la bêta apporte plusieurs corrections de bug et quelques nouveautés donc la plus importante est l’introduction de l’API Web.

L’API Web

Web API a fait son apparition dans WCF. Elle a pour objectif principal de permettre aux développeurs d’exposer leurs applications, données et services sur le web directement à travers HTTP.

Au vu des besoins d’interaction de plus en plus croissants entre une application Web et un ensemble très large de clients (réseaux sociaux, navigateurs, terminaux mobiles, etc.), il était indispensable de fournir aux développeurs un moyen de communiquer dans leurs applications avec ces différents types de clients. Pour ne pas avoir à développer deux outils différents permettant d’effectuer les mêmes actions, l’équipe d’ASP.NET MVC c’est chargée d’intégrer WCF Web API avec le Framework de développement qui devient Web API.

Regroupement par défaut

Depuis la Developer Previw d’ASP.NET MVC 4, la librairie Microsoft.Web.Optimisation avait été introduite à la plateforme, ainsi qu’a ASP.NET 4.5, pour permettre d’optimiser les performances d’une application et améliorer le temps de chargement des pages en utilisant le regroupement et la minification à la volée du JavaScript et CSS.

Avec la bêta de MVC 4, le regroupement est utilisé par défaut dans les modèles projets Web. A l’ouverture d’un Template, vous trouverez dans le fichier Layout les lignes de code suivantes dans la balise Head :

<head>
<meta charset="utf-8" />
<title>@ViewBag.Title - My ASP.NET MVC Application</title>
<link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
<link href="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Content/css")" rel="stylesheet" type="text/css" />
<link href="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Content/themes/base/css")" rel="stylesheet" type="text/css" />
<script src="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/Scripts/js")"></script>
<meta name="viewport" content="width=device-width" />
</head>

Pour plus de détail sur l’utilisation du regroupement et la minification du JavaScript dans une application Web, voir mon article sur le sujet.

Améliorations de Razor

Le moteur de vue Razor qui à fait son apparition avec MVC 3, croit en maturité dans cette version, avec des améliorations qui simplifient sa syntaxe dans certains scénarios courants.

– Résolution d’URL : prise en charge de « ~ » dans la syntaxe.

Désormais au lieu d’écrire :

<scriptsrc="@Url.Content("~/Scripts/Site.js")"></script>

Le développeur pourra écrire :

<scriptsrc="~/Scripts/Site.js"></script>

– Rendu conditionnel d’attribut

Précédemment, si vous vouliez utiliser un attribut qui peut-être nul, vous deviez vérifier au préalable si celui-ci n’est pas vide avant de l’utiliser.

<div@{if (myClass != null) { <text>class="@myClass"</text> } }>Content</div>

Désormais, Razor est capable de gérer cela automatiquement, de telles sortes que vous pouvez directement l’utiliser. Si l’attribut est vide il ne sera simplement pas appelé.

<div class="@myClass">Content</div>

Si l’attribut est donc nul, le rendu de code sera le suivant :

<div>Content</div>

Utilisation de NuGet pour installer les bibliothèques externes des modèles de projet

Avec la bêta de MVC 4, lorsque que vous créez un nouveau projet, les packages sont installés dans l’application en utilisant NuGet package restore. Le package NuGet restore permet lors de la compilation ou de la création d’une application, de vérifier si les packages présents correspondent aux dernières versions publiées. Si ce n’est pas le cas, il se charge automatiquement d’effectuer la mise à jour.

ASP.NET MVC 4 peut-être utilisé avec Visual Studio 2010 Service pack 1 ou Visual Web Developer 2010 Service Pack 1. La préversion de Visual Studio 11 n’est pas prise en charge.

Le framework peut s’installer via NuGet ou en utilisant le Web plateforme installer. Les binaires sont également disponibles en téléchargement.

Je reviendrais sur une présentation plus détaillé de Web API dans un prochain billet de blog.

2 réflexions au sujet de « ASP.NET MVC 4 beta : introduction de l’API Web et améliorations de Razor »

Laisser un commentaire