В моем приложении настроен тип удаленного взаимодействия, где я избегаю TargetInvocationExceptions
и получаю внутреннее исключение.Я вызываю внутренний метод PrepForRemoting
в классе Exception
, чтобы сохранить трассировку стека из вызванного метода.
Похоже, что правильно создается свойство трассировки стека:
"\ r \ n Трассировка стека сервера: \ r \ n
в ZBooking.Environment.Services.BookingService. <> c_ DisplayClass9`1.b _5 (BookingSlot p) в C: \ dev\ ZBookings \ core \ ZZBookings.Services \ BookingService.cs: строка 79 \ r \ n
в System.Linq.Enumerable.All [TSource] (источник IEnumerable'1, предикат Func'2) \ r \n
в ZBookings.BookingService.MoveBooking [TBookingType] (Int32 bookingId,> IEnumerable`1 bookingSlots) в C: \ dev \ ZBooking.Client \ core \ ZBookings.Services \ BookingService.cs: строка 79 \ r\ n \ r \ n
Исключение, переброшенное в [0]: \ r \ n в ZBookings.BookingService. <> c_ DisplayClass9`1.b _5 (BookingSlot p) в C:\ dev \ ZBookings \ core \ ZBookings.Services \ BookingService.cs: строка 79 \ r \ n
в System.Linq.Enumerable.All [TSource] (источник IEnumerable'1, предикат Func'2)\ r \ n
в ZBookings.BookingService.MoveBooking [TBookingType] (Int32 bookingId, IEnumerable`1 bookingSlots) в C: \ dev \ ZBookings \ core \ ZBookings.Services \ BookingService.cs: строка 79 "
Однако, когда это отображается стандартным желтым экраном ASP.NET, оно выглядит следующим образом:
[NullReferenceException: ссылка на объект не установлена для экземпляра объекта.] ZBooking.ApplicationServices.MethodMarshaller.Invoke (Делегировать del, ZipIdentity zipIdentity, Object [] args) в C: \ dev \ ZBooking \ core \ ZBooking.ApplicationServices \ MethodMarshaller.cs: 147 ZBooking.ApplicationServices.MethodMarshality Delegate, Object [] args) в C: \ dev \ ZBooking \ core \ ZBooking.ApplicationServices \ MethodMarshaller.cs: 105 ZBooking.ApplicationServices.MethodMarshaller.Call (Func'3 del, T1 arg1, T2 arg2, ZipIdentity zipIdentity) в C:\ dev \ ZBooking \ core \ ZBooking.ApplicationServices \ MethodMarshaller.cs: 72
... и т. д.
Вызов Server.GetLastError();
в Application_Error в Global.asax показывает правильную трассировку стека.Откуда исходит след от желтого экрана?