Kodumda, System.Reflection.TargetInvocationException
'un atıldığı bir durumla karşılaşıyorum. Belirli bir durumda, root istisnasını nasıl ele almak istediğimi biliyorum, ancak diğer istisnaları da atmak istiyorum. Bunu yapmanın iki yolunu düşünebilirim, ama hangisinin daha iyi olduğundan emin değilim. İç istisnanın türünü kontrol etme
2.
try
{
//code
}
catch (System.Reflection.TargetInvocationException ex)
{
try
{
throw ex.InnerException;
}
catch (SpecificException exSpecific)
{
//fix
}
}
Ben genelde özel durumlar atma yavaş farkındayım, bu yüzden ilk yöntem muhtemelen daha hızlı olacak hissediyorum
try
{
//code
}
catch (System.Reflection.TargetInvocationException ex)
{
if (typeof(ex.InnerException) == typeof(SpecificException))
{
//fix
}
else
{
throw ex.Innerexception;
}
}
1.
. Alternatif olarak, bunu düşünmediğim daha iyi bir yolu var mı?
2, büyüleyici. – Gabber
Soru: 'TargetInvocationException' adındaki çağrı nedir? Kodun mu yoksa üçüncü taraf mı? –
db'den okunan kod oluşturuldu. – geekchic