MVC Razor Validation-Fehler, die beim Laden der Seite angezeigt werden, wenn keine Daten gesendet wurden

Ich spiele mit Datenanmerkungen herum. Wenn ich auf einen Link klicke, um zu einer Seite zu gelangen, werden die Überprüfungsmeldungen angezeigt. Ich möchte jedoch, dass die Überprüfungsmeldungen nur angezeigt werden, wenn Daten übermittelt wurden.

Aussicht:

@Html.TextBoxFor(m => m.EmailAddress, new { @placeholder = "Enter Email", @class = "form-control" })
@Html.ValidationSummary(true, "Registration Failed. Check your credentials")
@Html.ValidationMessageFor(m => m.EmailAddress, "You must enter a valid Email Address.")

Modell:

[Required(ErrorMessage = "Email is required")]
[DataType(DataType.EmailAddress)]
[EmailAddress]
[Display(Name = "Email Address: ")]
public string EmailAddress { get; set; }

Regler:

[HttpGet]
        public ActionResult AddUser()
        {
            return View();
        }

        [HttpPost]
        public ActionResult AddUser(UserCreateViewModel user)
        {
            if (ModelState.IsValid)
            {
                var success = UserRepository.AddUser(user);

                if (success)
                {
                    return View("Success");
                }
            }

            return View("AddUser");
        }

Wie gesagt, mein Problem tritt beim Laden der AddUser-Ansicht auf. Wenn ich auf den Link klicke, um die AddUser-Seite anzuzeigen, werden nach dem Laden Überprüfungsmeldungen angezeigt. Zu diesem Zeitpunkt wurden jedoch keine Daten veröffentlicht, und das Modell ist leer.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage