Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
WCF uygulaması tarafından karşılaşılan hatalar üç gruptan birine aittir:
İletişim Hataları
Ara Sunucu/Kanal Hataları
Uygulama Hataları
Ağ kullanılamıyorsa, istemci yanlış adres kullanıyorsa veya hizmet konağı gelen iletileri dinlemiyorsa iletişim hataları oluşur. Bu türdeki hatalar, CommunicationException veya CommunicationException'den türetilmiş sınıflar olarak istemciye döndürülür.
Proxy/Kanal hataları, kanalın veya proxy'nin kendi içinde oluşan hatalardır. Bu türdeki hatalar şunlardır: kapatılmış bir ara sunucu veya kanal kullanmaya çalışmak, istemci ile hizmet arasında bir sözleşme uyuşmazlığı var veya istemcinin kimlik bilgileri hizmet tarafından reddedilir. Bu kategoride birçok farklı hata türü var ve burada listelenemeyecek kadar çok. Bu türdeki hatalar istemci as-is döndürülür (özel durum nesnelerinde dönüştürme yapılmaz).
Uygulama hataları, bir hizmet işleminin yürütülmesi sırasında oluşur. Bu tür hatalar FaultException olarak veya FaultException<TDetail> olarak istemciye gönderilir.
WCF'de hata işleme aşağıdakilerden biri veya daha fazlası tarafından gerçekleştirilir:
Atılan istisnai durumu doğrudan ele alma. Bu yalnızca iletişim ve ara sunucu/kanal hataları için yapılır.
Hata sözleşmelerini kullanma
IErrorHandler arabirimini uygulama
Olayları yönetme ServiceHost
Hata Sözleşmeleri
Hata sözleşmeleri, hizmet işlemi sırasında oluşabilecek hataları platformdan bağımsız bir şekilde tanımlamanızı sağlar. Varsayılan olarak, bir hizmet işleminin içinden atılan tüm özel durumlar istemciye nesne FaultException olarak döndürülür. Nesne FaultException çok az bilgi içerir. Bir hata sözleşmesi tanımlayıp hatayı olarak FaultException<TDetail>döndürerek istemciye gönderilen bilgileri denetleyebilirsiniz. Daha fazla bilgi için bkz. Sözleşmelerde ve Hizmetlerde Hataları Belirtme ve İşleme.
IErrorHandler
Arabirim, IErrorHandler WCF uygulamanızın hatalara nasıl yanıt verdiği üzerinde daha fazla denetim sahibi olmanıza olanak tanır. İstemciye döndürülen hata iletisi üzerinde tam kontrol sağlar ve günlüğe kaydetme gibi özel hata işleme işlemlerini gerçekleştirmenize olanak tanır. IErrorHandler ve Hata İşleme ve Raporlama Üzerinde Denetimi Artırma hakkında daha fazla bilgi için
ServiceHost Olayları
ServiceHost sınıfı hizmetleri barındırıyor ve hataları işlemek için gerekli olabilecek çeşitli olayları tanımlıyor. Örneğin:
Daha fazla bilgi için bkz. ServiceHost