Estoy escribiendo una aplicación C# que usa la automatización para controlar otro programa. Naturalmente, ese programa debe estar ejecutándose para que mi programa funcione. Cuando mi programa busca la aplicación y no puede encontrarla, me gustaría lanzar una excepción (por ahora más tarde, por supuesto, podría intentar abrir la aplicación, o decirle al usuario que la abra, o ...).¿Qué tipo de excepción arrojar en este caso?
Debo implementar una excepción personalizada o utilizar la NotSupportedException existente (o una de las otras excepciones de .NET). Si es una excepción personalizada, ¿qué sugerirías? Estaba pensando en implementar una excepción personalizada. Lo llamaría MyAppNameException y luego simplemente usaría el mensaje para declarar cuál era el problema.
¿Hay alguna regla general para lanzar excepciones de forma que su programa sea más legible y fácil de usar, o estoy simplemente pensando demasiado :)?
Gracias!
Cuando se deriva de 'System.Exception', [es una buena práctica implementar los tres constructores comunes recomendados] (https://msdn.microsoft.com/en-us/library/87cdya3t%28v=vs.110% 29.aspx). Dicho esto, en la situación descrita en la pregunta, lanzar una excepción puede no ser el mejor enfoque. Ver [la respuesta] (http://stackoverflow.com/a/3471960/1497596) por @Hans Passant. – DavidRR