मैं एक WCF सेवा है, जो कुछ शर्तों के अधीन एक AggregateException देता है, सभी समस्याओं का है कि कॉलAggregateException और WCF
दूसरी ओर, मैं एक FaultException (जो समझ में आता है हो रही है के माध्यम से हुआ साथ फोन कर रहा हूँ , क्योंकि डब्ल्यूसीएफ केवल इन अपवादों के बारे में समझता है)। समस्या यह है कि अनुबंध के लिए विवरण एक समग्र अपवाद नहीं है। ऐसा लगता है कि डिफ़ॉल्ट रूप से, डब्ल्यूसीएफ अपवादों (इनर एक्सेप्शन) की समेकित अपवाद सूची के लिए पहला अपवाद प्राप्त करता है, और इसे समाहित करता है। तो ग्राहक पक्ष पर, मुझे बस सूची का पहला अपवाद मिल रहा है। थोड़ा की जांच करने के बाद, मैं निम्नलिखित किया:
जोड़ा इस अनुबंध
[FaultContract(typeof(AggregateException))]
फिर सेवा कॉल पर
को ..
try
{
BaseService.Blabla.Delete(item);
}
catch (AggregateException ex)
{
throw new FaultException<AggregateException>(ex);
}
लेकिन दूसरी तरफ, जो इस पर है :
catch (FaultException<AggregateException> ex)
{
string msg = string.Empty;
foreach (var innerException in ex.Detail.InnerExceptions)
{
msg += innerException + Environment.NewLine;
}
MessageBox.Show(msg);
}
catch (Exception ex)
{
throw ex;
}
इसके बजाय अपवाद कैप्चर स्टेटमेंट में जा रहा है, एक घ इस तरह एक त्रुटि हो रही है (जो स्पष्ट रूप से कुछ यादृच्छिक त्रुटि है, क्योंकि मैं किसी तरह के संबंध मुद्दों की जरूरत नहीं है, और डिबगिंग इस तुरंत वापस लौट, 4 मिनट कभी नहीं पारित):
The socket connection was aborted. This could be caused by an error processing your message or a receive timeout being exceeded by the remote host, or an underlying network resource issue. Local socket timeout was '00:03:59.9939994'. : An existing connection was forcibly closed by the remote host
मैं क्या याद आ रही है?
आप डीबगर के माध्यम से कदम निर्धारित करने के लिए क्या अपवाद वास्तव में फेंक दिया जा रहा है की कोशिश की है? –