मेरे पास मेरे एप्लिकेशन के भीतर एक रिमोटिंग-प्रकार सेट अप है जहां मैं TargetInvocationExceptions
से बचता हूं और आंतरिक अपवाद को पकड़ता हूं। मैंने Exception
कक्षा पर आंतरिक PrepForRemoting
विधि को आह्वान विधि से स्टैक ट्रेस को संरक्षित करने के लिए आमंत्रित किया है।मौत की एएसपी.नेट पीले स्क्रीन - इसे स्टैक ट्रेस कहां से मिलता है?
"\ r \ n सर्वर स्टैक ट्रेस:। \ R \ n
ZBooking.Environment.Services.BookingService पर<> c_ DisplayClass9
यह सही ढंग से संपत्ति स्टैक ट्रेस के निर्माण के लिए प्रकट होता है `1.b _5 (BookingSlot पी) C: \ देव \ ZBookings \ कोर \ ZZBookings.Services \ BookingService.cs: लाइन 79 \ r \ n
पर System.Linq.Enumerable.All [TSource](IENumerable'1 स्रोत, Func'2 predicate) \ r \ n
ZBookings.BookingService.MoveBooking [TBookingType] सी में (Int32 bookingId,> IEnumerable`1 bookingSlots) पर: \ ZBookings.Services \ \ देव \ ZBooking.Client \ कोर BookingService.cs: लाइन 79 \ r \ n \ r \ n
अपवाद पुनर्विचार [0]: \ r \ n ZBookings.BookingService पर। <> c_ DisplayClass9`1.b _5 (BookingSlot पी) C: \ देव \ ZBookings \ कोर \ ZBookings.Services \ BookingService.cs: लाइन 79 \ r \ n
System.Linq.Enumerable पर सब के सब [TSource] (IEnumerable'1 स्रोत, Func'2 विधेय) \ r \ n
ZBookings.BookingService.MoveBooking [TBookingType] सी में (Int32 bookingId, IEnumerable`1 bookingSlots) पर: \ देव \ ZBookings \ core \ ZBookings.Services \ BookingService.cs: line 79 "
हालांकि, जब यह मानक ASP.NET द्वारा प्रदर्शित होता है स्क्रीन llow यह है:
[NullReferenceException: ऑब्जेक्ट संदर्भ एक वस्तु का एक उदाहरण के लिए सेट नहीं।] ZBooking.ApplicationServices.MethodMarshaller.Invoke सी में (प्रतिनिधि डेल, ZipIdentity zipIdentity, [] args वस्तु): \ देव \ ZBooking \ core \ ZBooking.AplicationServices \ MethodMarshaller.cs: 147 ज़बुकिंग। अनुप्रयोग सेवा। MethodMarshaller.Invoke (डीएलजी, ZipIdentity zipIdentity, ऑब्जेक्ट [] args) C: \ dev \ ZBooking \ core \ ZBooking.AplicationServices \ MethodMarshaller में .cs: 105 ZBooking.AplicationServices.MethodMarshaller.Call (Func'3 del, T1 arg1, T2 arg2, ZipIdentity zipIdentity) सी: \ dev \ ZBooking \ core \ ZBooking.AplicationServices \ MethodMarshaller.cs: 72
.. ।आदि।
ग्लोबल.एक्सएक्स में Application_Error पर Server.GetLastError();
पर कॉल करना सही स्टैक ट्रेस दिखाता है। पीले रंग की स्क्रीन स्टैक ट्रेस कहां से आ रही है?
क्या आप वाकई एक द्वितीयक अपवाद नहीं है जो पहले "कवर" करता है? दो अपवाद बहुत अलग दिखते हैं।क्या आप MethodMarshaler की लाइन 147 पर ब्रेकपॉइंट डाल सकते हैं? (और 105 और 72) और देखें क्या होता है? और शायद आप डीबगर को सभी NullReferenceException पर रोकने का प्रयास कर सकते हैं। – xanatos
यह बात है। एक अपवाद दूसरे को कवर कर रहा है - मैं सही आंतरिक अपवाद को फिर से फेंक रहा हूं और फिर वहां से अपने स्टैक ट्रेस को फिर से लिख रहा हूं। स्टैक ट्रेस री-राइट काम करता है लेकिन वाईएसओडी तक बुलबुला नहीं दिखता है। –