Pourquoi est-TargetInvocationException traités comme des non interceptée par l'IDE?

J'ai un code qui utilise la réflexion pour tirer les valeurs des propriétés d'un objet. Dans certains cas, les propriétés peuvent lever des exceptions, parce qu'ils ont des références nulles, etc.

object result;
try
{
    result = propertyInfo.GetValue(target, null);

}
catch (TargetInvocationException ex)
{
    result = ex.InnerException.Message;
}
catch (Exception ex)
{
    result = ex.Message;
}

En fin de compte que le code fonctionne correctement, mais quand je suis en cours d'exécution sous le débogueur:

Lorsque la propriété déclenche une exception, l'IDE gouttes dans le débogueur comme si l'exception a été interceptée. Si je viens frapper terme, le programme des flux de à travers et à l'exception vient comme un TargetInvocationException avec la véritable exception dans la propriété InnerException.

Comment puis-je empêcher cela?

InformationsquelleAutor Jason Coyne | 2010-04-17