2013-02-13 4 views
0

asp.net mvc côté validation du serveur lorsque le javascript est désactivé dans le navigateur? J'ai utilisé "remote" dans ma classe modale, il ne valide que lorsque le javascript est activé, il ne valide pas lorsque le javascript est désactivé.Validation ASP.Net MVC (côté serveur)

Scénario pour mon problème est que j'ai une table dans ma base de données avec une colonne "code" avec le type de données varchar. n'importe qui insère les données, ils doivent insérer le code unique. S'il vous plaît ne me aider

Répondre

2

Je suggère d'oublier remote parce que si vous utilisez le code premier cadre de l'entité, vous ne pouvez pas avoir plus d'une unique colonne dans votre table. Je voudrais juste écrire le code pour comme ceci:

[HttpPost] 
[AllowAnonymous] 
[ValidateAntiForgeryToken] 
public ActionResult Register(RegisterModel model) 
{ 
    if (ModelState.IsValid) 
    { 
     // Insert a new user into the database 
     using (UsersContext db = new UsersContext()) 
     { 
      UserProfile email = db.UserProfiles.FirstOrDefault(u => u.Email.ToLower() == model.Email.ToLower()); 
      try 
      { 
       // Check if email already exists 
       if (email == null) 
       { 
        WebSecurity.CreateUserAndAccount(model.UserName, model.Password, new { Email = model.Email }); 
        WebSecurity.Login(model.UserName, model.Password); 
        return RedirectToAction("Index", "Home"); 
       } 
       else 
       { 
        ModelState.AddModelError("Email", "Email address already exists. Please enter a different email address."); 
       } 
      } 
      catch (MembershipCreateUserException e) 
      { 

       ModelState.AddModelError("", ErrorCodeToString(e.StatusCode)); 
      } 
     } 
    } 

Remplacer l'email avec la propriété que vous voulez valider. À la publication, cela se comparera aux entrées avec ce qui existe déjà dans votre base de données, et en fonction des résultats, il vous donnera des commentaires. Rejette une exception si de telles données existent.

Questions connexes