für ein Benutzerobjekt in meinem asp.net MVC-Projekt, ich habe einen benutzerdefinierten Modelbinder geschrieben zu überprüfen, ob Passwörter gültig sind und ob zwei passenden Passwörter wurden etc .. eingegebenBenutzerdefinierte IModelBinder und Datenbankzugriff
die Login-Namen Bedürfnisse aber um einzigartig zu sein, habe ich mich gefragt, ob ich das im Modelbinder überprüfen kann, oder ist das eine schlechte Übung?
Die Sache ist, dass die Sammelmappe aufgerufen wird, bevor Sie überhaupt zum Controller gelangen, also würde ich zwei Instanzen meines dataContext herumschweben lassen und somit mehrere Verbindungen zur Datenbank, ich könnte wohl eine Fabrik einrichten Das.
Dies ist ein Code-Schnipsel von dem, was ich jetzt in der Steuerung:
// POST: /Users/Create
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create(Users user)
{
myDataContext db = new myDataContext();
if (!ViewData.ModelState.IsValid)
{
return View(user);
}
Users testUser = db.Users.SingleOrDefault(p => p.LoginNaam == user.LoginNaam);
if (testUser != null) { //Error stuff here }
}
Dies ist ähnlich zu dem, was ich tat, so dass ich denke, das ist der richtige Weg zu gehen! – Morph