Je travaille avec un fournisseur d'appartenance asp.net personnalisé en conjonction avec le contrôleur de compte par défaut fourni avec l'application exemple asp.net MVC. Tout se passe bien, sauf pour une chose minuscule: Après qu'un utilisateur crée un compte et est automatiquement connecté et redirigé, leur nom d'utilisateur ne s'affiche pas avec le message de bienvenue habituel.Le contrôle de connexion dans MVC n'affiche pas le nom d'utilisateur après la création de compte redirection
Je pensais que c'était peut-être parce qu'ils n'étaient pas connectés au moment où ils ont fait la demande. Une fois qu'ils se reconnectent, leur nom apparaît en haut, donc je ne pense pas que ce soit la faute des membres, mais je peux me tromper.
Le registre et rediriger méthode du contrôleur qui est livré avec asp.net MVC ressemble à ceci:
public ActionResult Register(string userName, string email, string password, string confirmPassword)
{
ViewData["PasswordLength"] = MembershipService.MinPasswordLength;
if (ValidateRegistration(userName, email, password, confirmPassword))
{
// Attempt to register the user
MembershipCreateStatus createStatus = MembershipService.CreateUser(userName, password, email);
if (createStatus == MembershipCreateStatus.Success)
{
FormsAuth.SignIn(userName, false /* createPersistentCookie */);
return RedirectToAction("Index", "Home");
}
else
{
ModelState.AddModelError("_FORM", ErrorCodeToString(createStatus));
}
}
// If we got this far, something failed, redisplay form
return View();
}
Ce utilise par la façon dont l'authentification par formulaire.
Editer: Voici la page principale utilisée par la page d'index. Il est le Site.master livré avec l'application par défaut asp.net MVC:
<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
<div id="header">
<div id="title">
<h1>Internship Site</h1>
</div>
<div id="logindisplay">
<% Html.RenderPartial("LogOnUserControl"); %>
</div>
<div id="menucontainer">
<ul id="menu">
<li><%= Html.ActionLink("Home", "Index", "Home")%></li>
<li><%= Html.ActionLink("About", "About", "Home")%></li>
</ul>
</div>
</div>
<div id="main">
<noscript>Your browser does not support JavaScript!</noscript>
<asp:ContentPlaceHolder ID="MainContent" runat="server" />
<div id="footer">
</div>
</div>
</div>
Toute aide et compréhension grandement appréciées.
est votre contrôle de connexion en utilisant AJAX affichée, et si oui, êtes-vous voir surtout ce problème dans IE? Il y a quelques astuces pour obtenir IE pour rafraîchir correctement les panneaux ajax parfois. –
Je n'utilise pas actuellement AJAX. J'ai fait la plupart des tests dans Firefox. Bonne pensée cependant, j'ai déjà rencontré cela auparavant. –