Estoy tratando de llenar Field con información de usuario usando ajax. Funciona bien;
ACCIÓN
public Operatore User(int Id) { Operatore User = new Operatore(); /* DO STUFF TO FILL USER */ /*if something go wrong throw new Exception("user does not exist"); */ return User; }pero si lanzo una excepción con un mensaje personalizado, no puedo leerlo en Ajax
AJAX
$.ajax({ type: "GET", contentType: "application/json; charset=utf-8", url: "@Url.Action("User")", data: { Id: $("#ID").find(":selected").val()}, success: function (msg) { /*FILL THE DATA*/ /*It works well*/ }, error: function (error) { alert(error.Message); /*this does not work*/ } });Solo necesito leer mi mensaje de error personalizado. La alerta devuelve "indefinido" ¿Cómo puedo hacer?
Si algo sale mal (en operatore):
Response.StatusCode = 500; Return Json("Error Message");StatusCode es necesario para engañar a Ajax. Cuidado, tu acción debe devolver un objeto.
En el Ajax:
error: function (error) { alert(error.responseJSON); }