Evaluar y enviar comentarios
Contraer todo/Expandir todo Contraer todo
Esta página es específica de
Microsoft Visual Studio 2005/.NET Framework 2.0

Hay además otras versiones disponibles para:
Guía de programación de C#
Cómo: Controlar una excepción mediante Try y Catch (Guía de programación de C#)

El propósito de un bloque try-catch es detectar y controlar una excepción generada por código en funcionamiento. Algunas excepciones se pueden controlar en un bloque catch y el problema se puede resolver sin que se vuelva a generar la excepción; sin embargo, con más frecuencia lo único que puede hacer es asegurarse de que se produzca la excepción adecuada.

En este ejemplo, IndexOutOfRangeException no es la excepción más adecuada: ArgumentOutOfRangeException tiene más sentido para el método porque el argumento de index pasado por el llamador produce el error.

C#
class TestTryCatch
{
    static int GetInt(int[] array, int index)
    {
        try
        {
            return array[index];
        }
        catch (System.IndexOutOfRangeException e)  // CS0168
        {
            System.Console.WriteLine(e.Message);
            //set IndexOutOfRangeException to the new exception's InnerException
            throw new System.ArgumentOutOfRangeException("index parameter is out of range.", e);
        }
    }
}

El código que produce una excepción está incluido en el bloque try. Una instrucción catch se agrega inmediatamente después para controlar IndexOutOfRangeException, si se produce. El bloque catch controla IndexOutOfRangeException y en su lugar produce la excepción ArgumentOutOfRangeException, más adecuada. Para proporcionar al llamador tanta información como sea posible, considere la posibilidad de especificar la excepción original como InnerException de la nueva excepción. Dado que la propiedad InnerException es de sólo lectura, debe asignarla en el constructor de la nueva excepción.

Contenido de la comunidad   ¿Qué es Community Content?
Agregar contenido nuevo RSS  Anotaciones
Processing
© 2009 Microsoft Corporation. Reservados todos los derechos. Términos de uso | Marcas Registradas | Privacidad
Page view tracker