CLR: .Net / Mono / Boo / Otros CLR > VB .NET
Controlar Excepcion Especifica
(1/1)
Vortice:
Camaradas yo otra vez…saludines…
Estoy tratando de controlar una excepción q me da un error al duplicar una clave (Primary Key), me da el siguiente error.
Violation of PRIMARY KEY constrain "PK_ALUMNOS_1".cannot insert duplicate key in object "dbo.Alumnos".
Y quiero q en vez de darme este error entregar un mensaje, se q esto se hace con la clausula When en el Catch ex As Exception del Try, pero q le digo después del When ahí estoy pegado…
Ojala puedan ayudarme.
Gracias….Foreros y público en general...
Mollense:
Yo para eso uso un método estático:
--- Código: Text ---public static void mostrarCartelDeError(string strErrorActual) { int intCodigoDeError=0; string strMensajeDeError=""; if (strErrorActual.IndexOf(',') != -1) { try { intCodigoDeError = Convert.ToInt32(strErrorActual.Split(',')[0]); strMensajeDeError = strErrorActual.Split(',')[1]; } catch { intCodigoDeError = -1; } } switch (intCodigoDeError) { case 2627: strErrorActual = "Ya existe un proceso de...."; break; case 547: strErrorActual = "El registro está siendo utilizado.\nNo puede ser eliminado..."; break; case 15025: case 15023: strErrorActual = "El usuario ya está registrado..."; break; case 15151: strErrorActual = "El usuario no existe..."; break; . . . . . default: strErrorActual = "Ha ocurrido un error interno, contacte con el desarrollador"; break; } MessageBox.Show(strErrorActual, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); }
y lo uso así:
--- Código: Text --- catch (Exception ex) { ClaseManejadorDeMensajes.mostrarCartelDeError(ex.Message); }
Espero que puedas adaptarlo para lo que vos necesitás.
Un saludo :beer:
Navegación
Ir a la versión completa