2012-08-24 2 views
2

Je travaille dans asp.net mvc 4. J'ai un modèle de connexion avec 2 champs obligatoires: email et mot de passe. J'utilise @ Html.TextboxFor pour récupérer la valeur correcte. Cela fonctionne pour mon mot de passe, mais je n'arrive pas à le faire fonctionner pour le compte.textboxpour ne pas retourner la valeur sur soumettre

Voici mon code:

.cshtml

@model IntraNoviUserLoginModel 
@using (Html.BeginForm("Login", "Home")) 
{ 
    @Html.TextBoxFor(m => m.Email) 
    @Html.TextBoxFor(m => m.Password, new { id = "password", type = "password" }) 
} 

Controller:

[HttpPost] 
public ActionResult Login(IntraNoviUserLoginModel model) 
{ 
    if (ModelState.IsValid) 
    { 
     //Code 
    } 
} 

Modèle:

public class IntraNoviUserLoginModel 
{ 
    [Required] 
    public string Email { get; set; } 

    [Required] 
    [DataType(DataType.Password)] 
    public string Password { get; set; }  
} 

Je n'ai pas mis l'e-mail textbox sur activé = false . Il devrait rester activé tout le temps.

J'espère que nous pouvons comprendre cela ensemble

+1

Le modèle de classe publique doit-il être public class IntraNoviUserLoginModel? – Dismissile

+0

Je pensais que j'ai changé tous les noms de modèles, mais il semble que je l'ai oublié là-bas. Puisque nous utilisons des noms longs, je les ai changés pour modéliser dans l'exemple. Je vais l'éditer en ce moment. J'utilise le bon modèle dans mon code. – whodares

+0

et le modèle @model pour le coupler – dougajmcdonald

Répondre

1

je fixe ceci en utilisant EditorFor au lieu de TextboxFor. Je ne sais pas pourquoi ça marche soudainement, peut-être que quelqu'un peut m'éclairer dans les commentaires?

+0

Je sais que c'est 2 ans de retard, mais je rencontre ce problème maintenant ... EditorFor ne vous laisse pas assigner des classes facilement, mais TextBoxFor ne renvoie pas de valeurs. Donc je suis à perte! – adamdabbracci

Questions connexes