2009-06-18 6 views
1

ich ein Problem mit dem meine Validierungsmeldungen Fein auf einem Addierungsoperation zeigen, aber wenn es um die Update-Seite kommt, werden die Validierungsmeldungen nicht angezeigt:MVC Html.ValidationMessage nicht auf Update Brennen

Dies ist meine Aktion, IsValid wird als falsch ausgegeben und die Aktion wird zur Bearbeitungsansicht umgeleitet, aber keine der Bestätigungsmeldungen wird angezeigt. Ist etwas falsch an meinem Ansatz?

[Authorize] 
    public ActionResult UpdateCar(CarDTO car) 
    { 
     try 
     { 
      _carTask.Update(car); //required Name field not set 
     } 
     catch (RulesException ex) 
     { 
      ex.AddModelStateErrors(ModelState, null); 
     } 

     if (!ModelState.IsValid) 
     { 
      return RedirectToAction(ViewNames.EditCar, new {carKey = car.carKey}); 
     } 
     return RedirectToAction(ViewNames.Home, new {carKey = car.carKey}); 
    } 


<li> 
    <label for="Name">Car Name:</label> 
    <%= Html.TextBoxFor(x => x.Name, new { watermark="Car Name" })%> 
     <br /> 
     <%= Html.ValidationMessage("Name") %> 
</li> 

Antwort

2

Wenn das Formular ungültig ist, werden Sie auf eine neue Seite umgeleitet, die alle modalen Fehlerwerte verliert, die Sie festlegen. Übergeben Sie stattdessen einfach die Ansicht. Habe die Syntax nicht überprüft, aber so etwas wie das Folgende.

if (!ModelState.IsValid) 
{ 
    return View(ViewNames.EditCar, new {carKey = car.carKey}); 
} 

return RedirectToAction(ViewNames.Home, new {carKey = car.carKey}); 
Verwandte Themen