page de login avec LogOnUserControl.ascx
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 :
Code:
1 2
|
<asp:ContentPlaceHolder ID="MainContent" runat="server" /> |
Dans ce block j'insère le contenu de ça :
Code:
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> |
c'est ma vue index.aspx
comme vous avez pu le voir dans cette vue j'ai plusieur RenderPartial.
Mon soucis est que :
Code:
1 2
|
<% Html.RenderPartial("../Account/LogOnUserControl"); %> |
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.
Voila le code de mon model :
---------------------------
Code:
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:
-----------------------
Code:
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> |
au début j'ai essayé ça :
Code:
1 2
|
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Oscimes.Web.Models.LogOnModel>" %> |
et cela ne marche pas...
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