¿Cómo proporciono mensajes de éxito en asp.net mvc?¿Cómo proporciono los mensajes de éxito asp.net mvc?
Respuesta
Use ViewData para almacenar los mensajes de éxito. Cree el mensaje de éxito en el Controlador y verifíquelo en la Vista. Si existe, renderízalo.
en su controlador, puede hacer esto:
ViewData["Message"] = "Success"
y en su vista en la que se puede comprobar si hay un mensaje para mostrar, y si es así que mostrarlo:
@if (ViewData["Message"] != null)
<div>success</div>
¿No tendría más sentido mostrar realmente el mensaje almacenado en lugar de uno completamente diferente? – Kehlan
Tengo una tendencia a almacenar mis errores y éxitos en la misma matriz/objeto y pasarlos a la vista.
Dado que la mayoría de mi mensaje de error/éxito aparecería en el mismo lugar y generalmente no ocurren al mismo tiempo, esto no suele ser un problema.
Tengo una función llamada ShowFeedback()
que se llama como usercontrol y hace la lógica para determinar qué mostrar. Los errores y éxitos se marcan igual en HTML y solo el css difiere un poco. Lo que podría tener
<div id="feedback" class="error">
Your error message
</div>
o
<div id="feedback" class="success">
Your success message
</div>
Si está mostrando un mensaje en una página diferente que ViewData
no le ayudará, ya que se reinicializa con cada solicitud. Por otro lado, TempData
puede almacenar datos para dos solicitudes. He aquí un ejemplo:
public ActionResult SomeAction(SomeModel someModel)
{
if (ModelState.IsValid)
{
//do something
TempData["Success"] = "Success message text.";
return RedirectToAction("Index");
}
else
{
ViewData["Error"] = "Error message text.";
return View(someModel);
}
}
Dentro if
bloque debe utilizar TempData
porque estás haciendo redirección (otra solicitud), pero dentro de lo contrario puede utilizar ViewData
.
Y dentro de ver que podría tener algo como esto:
@if (ViewData["Error"] != null)
{
<div class="red">
<p><strong>Error:</strong> @ViewData["Error"].ToString()</p>
</div>
}
@if (TempData["Success"] != null)
{
<div class="green">
<p><strong>Success:</strong> @TempData["Success"].ToString()</p>
</div>
}
Realmente no hay necesidad de volver a implementar el manejo de errores, ya que ya está incorporado a través de ModelState.AddModelError(). Además de escribir menos código, obtienes un mejor control sobre dónde quieres que aparezcan exactamente tus errores de validación (Html.ValidationSummary() y Html.ValidationMessageFor()). Además, el uso de marcos de validación/complementos se vuelve más fácil de conectar porque también se adhieren al estándar de ModelState. –
@Daniel Estoy de acuerdo, pero la pregunta era sobre el mensaje de éxito no el error de validación;) – frennky
Recomiendo este tipo de vista de mensaje en la página maestra. – qub1n
TempData se puede utilizar como un diccionario. Cada valor guardado es válido para la solicitud actual y la siguiente. Perfecto para redirecciones.
this.TempData["messages"] = "Success!";
return RedirectToAction("YourAction");
- 1. Experiencias ASP.NET MVC/Historias de éxito [2010]
- 2. ASP.NET MVC Mostrar mensaje de éxito
- 3. Borrar los mensajes de validación de ASP.Net MVC con jQuery
- 4. mensajes de éxito en lugar de modelar los mensajes de error de estado
- 5. ASP.NET MVC 3: Validación de lista de mensajes get
- 6. mensajes de dominios cruzados a la aplicación ASP.Net MVC
- 7. asp.net mvc Cómo probar los controladores correctamente
- 8. ¿Cómo proporcionar comentarios de "éxito" de acción al usuario en ASP.NET MVC?
- 9. Cómo gestionar mejor los permisos (no roles) en la membresía de asp.net, específicamente en ASP.NET MVC
- 10. Mensajes de aserción: suponga un error o asuma el éxito
- 11. ¿Cómo implementa la paginación en ASP.NET MVC?
- 12. Cambiar el idioma de los mensajes de error en ASP.NET
- 13. Cómo mostrar mensajes de error de validación en una página ASP.NET MVC?
- 14. ¿Cómo proporciono datos de variables de JavaScript de las variables de ASP.NET?
- 15. ASP.NET MVC - ¿Cómo explicarlo?
- 16. Temas Asp.Net MVC, ¿cómo?
- 17. ruby on rails mensajes flash -: alerta: error: aviso y: ¿éxito?
- 18. ASP.NET MVC 4 rompe ASP.NET MVC 3 proyectos
- 19. ASP.NET MVC Listar todos los usuarios
- 20. Asp.Net MVC3, devolver el éxito JsonResult
- 21. asp.net mvc FileStreamResult
- 22. ASP.Net MVC 3, Ninject y Quartz.Net - ¿Cómo?
- 23. ¿Cómo solicito y proporciono archivos clojure?
- 24. ¿Cómo proporciono soporte personalizado para mi clase?
- 25. ASP.NET MVC3 discreta localización de mensajes de validación jQuery
- 26. ASP.NET MVC: Controlador simulado.Url.Action
- 27. WCF: ¿cómo cifro los mensajes?
- 28. Asp.Net MVC OnSessionStart caso
- 29. detener los ataques Zmeu con ASP.NET MVC
- 30. ¿Cómo funciona Url.Action Asp.net MVC?
success for what? ¿Qué quieres decir con mensaje? ¿Qué está tratando de lograr? ayúdanos a ayudarte –