internal static string ReadCSVFile(string filePath)
{
try
{
...
...
}
catch(FileNotFoundException ex)
{
throw ex;
}
catch(Exception ex)
{
throw ex;
}
finally
{
...
}
}
//Reading File Contents
public void ReadFile()
{
try
{
...
ReadCSVFile(filePath);
...
}
catch(FileNotFoundException ex)
{
...
}
catch(Exception ex)
{
...
}
}
Aquí en el ejemplo de código anterior, tengo dos funciones ReadFile y ReadCSVFile.
En el archivo ReadCSV, obtengo una excepción de tipo FileNotFoundExceptioon, que queda atrapada en el bloque catch (FileNotFoundException). Pero cuando lanzo esta excepción para atraparme en la captura (FileNotFoundException) de la función ReadFile(), queda atrapada en el bloque catch (Exception) en lugar de catch (FileNotFoundException). Además, al depurar, el valor de la ex dice como Objeto no inicializado. ¿Cómo puedo lanzar la excepción de la función llamada al bloque de captura de la función de llamante sin perder la excepción interna o al menos el mensaje de excepción?Lanzar excepción de la función llamada al bloque de captura de la función de llamador
posible duplicado de [.NET - Excepciones Lanzar mejores prácticas] (http://stackoverflow.com/questions/22623/net-throwing-exceptions-best-practices) – Chris
cuando usa el mismo objeto local de excepción, ¿está seguro de que la excepción interna es del tipo 'FileNotFoundException'? – NirMH
No es un duplicado, pero una pregunta que carece de información para mostrar por qué no es un duplicado :) – PVitt