Comment Afficher les Messages d'Erreur de Validation sur un ASP.NET MVC Page?
Je suis assez nouveau à ASP.NET et C# j'ai passé la journée à apprendre les bases de la ASP.NET fournisseur d'appartenances j'ai construit toute ma validateur mais sont coincé à la sortie de mon message d'erreur sur la page.
private void LogCreateUserError(MembershipCreateStatus status, string username)
{
string reasonText = status.ToString();
switch (status)
{
case MembershipCreateStatus.DuplicateEmail:
case MembershipCreateStatus.DuplicateProviderUserKey:
case MembershipCreateStatus.DuplicateUserName:
reasonText = "The user details you entered are already registered.";
break;
case MembershipCreateStatus.InvalidAnswer:
case MembershipCreateStatus.InvalidEmail:
case MembershipCreateStatus.InvalidProviderUserKey:
case MembershipCreateStatus.InvalidQuestion:
case MembershipCreateStatus.InvalidUserName:
case MembershipCreateStatus.InvalidPassword:
reasonText = string.Format("The {0} provided was invalid.", status.ToString().Substring(7));
break;
default:
reasonText = "Due to an unknown problem, we were not able to register you at this time";
break;
}
//CODE TO WRITE reasonText TO THE HTML PAGE ??
}
Quelle est la meilleure façon de sortie de la varible résultat sur la page que j'ai invoqué le construit en ASP:Validateurs jusqu'à maintenant.
Est-ce à l'aide de ASP.NET MVC ou WebForms? Aussi, avez-vous des contrôles de la page que vous souhaitez le statut est indiqué dans?
ASP.NET MVC, je n'ai pas mis tout en place des contrôles pour cela que je suis un peu incertain ce qu'il contrôle pourrais écrire. Serait <asp:Littéral runat="server" ID="ErrorMessage"/> être approprié ? ou suis-je à la dérive dans la mauvaise direction.
Quelle classe ne comprend que la méthode privée appartenant à la manette? Pourriez-vous poster le code de l'action du contrôleur qui est de l'appeler?
Ps. Avec ASP.NET MVC, à l'aide de quoi que ce soit avec
ASP.NET MVC, je n'ai pas mis tout en place des contrôles pour cela que je suis un peu incertain ce qu'il contrôle pourrais écrire. Serait <asp:Littéral runat="server" ID="ErrorMessage"/> être approprié ? ou suis-je à la dérive dans la mauvaise direction.
Quelle classe ne comprend que la méthode privée appartenant à la manette? Pourriez-vous poster le code de l'action du contrôleur qui est de l'appeler?
Ps. Avec ASP.NET MVC, à l'aide de quoi que ce soit avec
runat="server"
est complètement à la dérive dans la mauvaise direction.OriginalL'auteur Yardstermister | 2010-05-13
Vous devez vous connecter pour publier un commentaire.
MVC
Voir pour un bon exemple...
ASP.NET MVC, Html.ValidationSummary(vrai) n'affiche pas les erreurs de modèle
Fondamentalement, vous avez besoin de propager l'erreur message et aussi le fait qu'il n'y est une erreur à votre vue à partir de votre contrôleur. ModelStateDictionary.AddModelError() va prendre soin de ces tâches pour vous.
Vous pouvez ensuite utiliser ValidationExtensions.ValidationSummary() à afficher.
Webforms
Vous n'avez pas ont d'utiliser un validateur pour cela. La plupart des gens ne le font pas. Un style simple DIV devrait bien fonctionner.
par exemple.
Avis de la
runat
paramètre.Maintenant dans votre code-derrière vous, vous pouvez essayer
Si vous voulez vraiment utiliser un validateur de caisse...
http://weblogs.asp.net/ashicmahtab/archive/2008/12/12/putting-messages-into-a-validationsummary-control-from-code.aspx
Fondamentalement, vous définissez la ErrorMessage et isValid paramètres au programme de validation dans le code derrière. La relative ValidationSummary devrait afficher le message d'erreur.
OriginalL'auteur kervin
Il suffit d'ajouter asp étiquette de contrôle à la page et puis définissez la propriété text avec le retour vale.
OriginalL'auteur Ben Robinson
Si à l'aide de Formulaires web, vous pouvez utiliser une Étiquette de contrôle et de définir le".Le texte " de la propriété avec votre résultat. Ou un Panneau de contrôle. Ou un UserControl spécifiquement pour la sortie des messages d'erreur (c'est ce que je fais) que vous pouvez ajouter à votre MasterPage.
OriginalL'auteur CarmineSantini
Vous pouvez utiliser récapitulatif de la validation ou vous pouvez utiliser un contrôle label pour afficher le message d'erreur
OriginalL'auteur Bala