Hejsa allesammen
Er nu ved at have lavet selve registreringen af en bruger, men nu kommer mit problem.
Jeg vil jo gerne have mine egne regler som jeg ikke kan validere i modellen, men som jeg selv skal styre.
Det er ting som at den email du registrer med kan måske allerede eksistere, og du skal spørges om du vil logge ind med den i stedet.
Hvis du logger ind, og du ikke har bekræftet din email skal dette valideres og fortælles ud.
Det skal fremkomme som fejl og en form for validering på siderne.
Hvordan kan jeg gøre dette smartest og nemmest?
--------------------------------------
Min egen løsning har været at lave min model med et felt til ErrorValidation hvis 1, 2, 3, 4 etc. af kriterier og så returnere til samme view med en opdateret model.
Eksempel på Controller:
- public ActionResult Create(Models.RegisterModel createdUser)
- {
- try
- {
- if (!ModelState.IsValid)
- {
- return View(createdUser);
- }
-
- //Check at bruger allerede eksisterer
- if (EmailExists(createdUser.Email))
- {
- createdUser.ErrorValidation = "E-mail findes allerede.";
- createdUser.ErrorValidationLinkText = "Ønsker du at logge ind i stedet?";
- createdUser.ErrorValidationLink = Url.Action("Login", "User");
- return View(createdUser);
- }
-
- return RedirectToAction("Index");
-
- }
- catch
- {
- return View();
- }
- }
Vil stadig gerne høre input på om det er en dårlig måde at gøre det på?
Godt/skidt på grund af? Om det bør laves på en anden måde eller der er en anden best practice?
Indlæg senest redigeret d. 30.04.2013 21:17 af Bruger #17215