Loïc Bar
Introduction à ASP.NET MVC
Dans cet article, vous découvrirez tout ce que vous devez savoir pour créer un site web à l’aide de la technologie ASP.NET MVC.
Par Loïc Bar publié le 10/05/2009 à 21:19, lu 6864 fois, 12 pages
 8 | MasterPage
Les MasterPage sont très souvent utilisées en ASP.NET. ASP.NET MVC reprend le même concept de MasterPage. Mais certaines choses doivent être connues dans ASP.NET MVC.
Dans ASP.NET il n’était pas si simple d’envoyer des données à la MasterPage. En ASP.NET MVC c’est beaucoup plus facile puisque la MasterPage est considérée comme faisant partie de la vue (logique !). Donc vous pouvez traiter les données dans la MasterPage comme si c’était dans la vue.
Ainsi ceci fonctionne dans la MasterPage :

< div id="title">

                <h1><%= Html.Encode(ViewData["Message"]) %></h1>

            </div>

A condition, bien sûr, d’avoir ViewData["Message"] défini dans toutes les actions. En effet, ce message sera affiché dans toutes les vues qui utilise la MasterPage.
Pour régler ce problème, nous pouvons créer un classe qui dérive de Controller et qui défini ViewData["Message"] dans son constructeur. Nos autres contrôleurs dériveront de ce nouveau.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.Mvc;

using System.Web.Mvc.Ajax;

 

namespace THB_MVC.Controllers

{

    public class ApplicationController : Controller

    {

        public ApplicationController()

        {

            ViewData["Message"] = "Welcome to ASP.NET MVC!";

        }

 

    }

}

Dans notre HomeController nous avons alors :

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.Mvc;

using THB_MVC.Models;

 

namespace THB_MVC.Controllers

{

    [HandleError]

    public class HomeController : ApplicationController

    {

Cette technique évite bien des ennuis pour cause d’oubli.
 
» Démarrer une discussion
 
Discussion démarée par killscores le 18/05/2009 à 12:12, 1 commentaire(s).