Bonjour,
Je rencontre un probl�me en voulant utiliser une vue MVC fortement typ�e, je m'explique :
- J'ai un Controller HomeController.cs contenant une action Person
- J'ai une View associ�e � cette action Person.aspx qui est fortement typ�e.
- Le Model correspondant est PersonModel.cs
Jusqu'ici rien de sp�cial.
- J'ai cr�� un UserControl View MVC fortement typ� Profile.ascx
- Le Model correspondant est ProfileModel.cs
Je veux utiliser ce UserControl dans ma View :
- Une r�f�rence � Profile.ascx est incluse dans ma View Person.aspx
- Le Model PersonModel.cs � une propri�t� public Profile de type ProfileModel.cs
- Dans mon action Person de HomeController.cs j'ai le code suivant :
Le probl�me est le suivant :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9 public ActionResult Person() { PersonModel person = new PersonModel(); person.Profile = new ProfileModel(); person.Profile.Name = "toto"; ViewData.Model = person; return View(); }
Comment r�cup�rer l'objet de type ProfileModel de la propri�t� Profile dans ma View UserControl sachant que le typage est fait de la fa�on suivante dans Profile.ascx :
la ligne
Code : S�lectionner tout - Visualiser dans une fen�tre � part <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MyApp.Models.ProfileModel>" %>plante car elle attend un objet m de type ProfileModel et non PersonModel. Comment peut-on lui passer la propri�t� Profile?
Code : S�lectionner tout - Visualiser dans une fen�tre � part <%= Html.DisplayFor(m => m.Name) %>
Partager