16 NİSAN 2013, Salı
tüm işlenmemiş özel durumları yakalamak ASP.NET Web Apı
Nasıl yakalamaktümASP.NET Web oluşan özel durumlar onları günlük ben öyle Apı işlenmeyen?
Şimdiye kadar çalıştık:
- Oluşturun ve
ExceptionHandlingAttribute
bir kayıt Global.asax.cs
Application_Error
bir yöntemi uygulamakAppDomain.CurrentDomain.UnhandledException
abone olunTaskScheduler.UnobservedTaskException
abone olun
ExceptionHandlingAttribute
başarıyla denetleyicisi eylem yöntemleri ve eylem filtreler içinde atılan istisnaları, ama diğer istisnalar, örneğin işlenmez:
- Özel durumlar
IQueryable
bir eylem tarafından döndürülen bir yöntemi uygulamak için başarısız olduğunda atılır - İstisnalar bir ileti işleyicisi (örneğin
HttpConfiguration.MessageHandlers
) tarafından oluşturuldu - İstisnalar denetleyicisi bir örnek oluştururken atılmış
Eğer bir istisna 500 İç Sunucu Hatası müşteri iade edilmesine neden olacak. Eğer onu açmış istiyorum. Application_Error
uygulama yaptım bu işi iyi Web Forms ve MVC Web Apı olarak ne kullanabilirim?
CEVAP
27 Ocak 2014, PAZARTESİ
Bu şimdi 2.1 (What's New) WebAPİ ile mümkündür:
İExceptionLogger bir veya daha fazla uygulamaları oluşturun. Örneğin:
public class TraceExceptionLogger : ExceptionLogger
{
public override void Log(ExceptionLoggerContext context)
{
Trace.TraceError(context.ExceptionContext.Exception.ToString());
}
}
O zaman şu şekilde: config bir geri arama içinde uygulamanızın HttpConfiguration kayıt
config.Services.Add(typeof(IExceptionLogger), new TraceExceptionLogger());
ya da doğrudan:
GlobalConfiguration.Configuration.Services.Add(typeof(IExceptionLogger), new TraceExceptionLogger());
Bunu Paylaş:
Genel olarak bir WPF uygulama özel dur...
.NET - ' " uygulamak için en ...
C tüm özel durumları yakalamak...
Nasıl Flex tüm özel durumları yakalama...
Nasıl SQL Server zaman aşımı özel duru...