Bonjour,
J'aimerais si déjà je suis dans la bonne section, je n'ai pas trouvé sur le forum et j'en suis désolé.
Voila le contexte...
Sous asp.net MVC, j'ai construis une master page, jusque là tout va bien.
Dans cette MasterPage j'ai mon block de content suivant :
Dans ce block j'insère le contenu de ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <asp:ContentPlaceHolder ID="MainContent" runat="server" />
c'est ma vue index.aspx
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %> <asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> Oscimes </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <div class="container"> <% Html.RenderPartial("../Home/ContainerHomeUserControl"); %> </div> <div class="centerBlock"> <% Html.RenderPartial("../Home/NewsBlockHomeUserControl"); %> <% Html.RenderPartial("../Account/LogOnUserControl"); %> </div> </asp:Content>
comme vous avez pu le voir dans cette vue j'ai plusieur RenderPartial.
Mon soucis est que :
pour ce fichier qui est un UserControl je n'arrive pas à appliquer le model que j'ai créé pour le control de mes champs de formulaire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <% Html.RenderPartial("../Account/LogOnUserControl"); %>
Voila le code de mon model :
---------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Web; using System.Web.Mvc; namespace Oscimes.Web.Models { public class login { public Boolean checkUser() { return true; } } public class LogOnModel { [Required] [Display(Name = "Login")] public string login { get; set; } [Required] [DataType(DataType.Password)] [Display(Name = "password")] public string password { get; set; } [Display(Name = "Remember me?")] public bool RememberMe { get; set; } } }
mon fichier LogOnUserControl:
-----------------------
au début j'ai essayé ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<dynamic>" %> <div class="boxStats login"> <h2>Identification</h2> <div class="newsBox"> <% using (Html.BeginForm("LogOn", "Account", null, FormMethod.Post, new { @class = "desc" })){ %> <%: Html.ValidationSummary(true, "Login ou mot de passe éronné.") %> <fieldset> <%: Html.TextBox("login", "", new { data_val = "true", data_val_required = "Le champs Login est requis", @class = "textfield" })%> <%: Html.Password("password", "", new { data_val = "true", data_val_required = "Le champs Mot de passe est requis", @class = "textfield" })%> <input type="submit" class="submit" value="Valider" /><br/> <%: Html.ValidationMessage("login") %> <%: Html.ValidationMessage("password")%> <a href="#"><span>></span> <%: Html.ActionLink("Mot de passe oublié ?", "renvoieMDP", "Account")%></a><br/> <a href="#" class="add"><span>></span> <%: Html.ActionLink("Créer un compte", "FormulaireContact", "Contact")%></a> </fieldset> <% } %> <div class="shadow"></div> </div> </div>
et cela ne marche pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Oscimes.Web.Models.LogOnModel>" %>
j'ai l'impression que comme c'est un UserControl et non une vue directement je ne sais pas trop comment passer ce modéle en paramètre...
J'ai vu qu'il y avait les ViewBag et ViewDate mais je n'arrive pas non plus à faire marcher tous ça.
Auriez-vous des pistes ou des exemples ?
merci par avance
Partager