Ошибка «Исключение было вызвано целью вызова» (mscorlib)

StackOverflow https://stackoverflow.com/questions/648113

  •  22-07-2019
  •  | 
  •  

Вопрос

У меня есть веб-сайт, разработанный на ASP.Net 2.0, который выдает ошибку

"Exception has been thrown by the target of an invocation" 

в производственной среде. Эта ошибка не возникала при разработке.

Источник - "mscorlib", а трассировка стека сообщает об ошибке в

System.RuntimeMethodHandle._InvokeMethodFast.

Единственное, что я изменил со времени моей последней загрузки в производство, - это то, что я начал использовать элементы управления членством (Login, LoginView) и добавил еще несколько хранимых процедур, таблиц и т. д. Членство зависит от провайдер я написал.

Кто-нибудь знает, почему это может происходить?

Это было полезно?

Решение

Я бы посоветовал проверить наличие внутреннего исключения. Если его нет, проверьте в своих журналах исключение, которое произошло непосредственно перед этим.

Это не исключение для веб-сайтов, с которым я также сталкивался при разработке настольных приложений. Короче говоря, происходит то, что поток, получающий это исключение, выполняет некоторый асинхронный код (через Invoke (), например), и тот код, который выполняется асинхронно, взрывается с исключением. Это целевое исключение вызова является последствием этого сбоя.

Если вы этого еще не сделали, поместите какую-нибудь оболочку регистрации исключений вокруг асинхронных обратных вызовов, которые вызываются при возникновении этой ошибки. Обработчики событий, например. Это должно помочь вам отследить проблему.

Удачи!

Другие советы

Это может произойти при вызове метода, который не существует.

Я знаю, что это странно, но я столкнулся с этой ошибкой для приложения на c # и, наконец, обнаружил, что проблема заключается в значке формы! когда я изменил это все просто работало нормально.

Я должен сказать, что у меня была эта ошибка только в XP, а не в 7 или 8.

' Get the your application's application domain.
Dim currentDomain As AppDomain = AppDomain.CurrentDomain 

' Define a handler for unhandled exceptions.
AddHandler currentDomain.UnhandledException, AddressOf MYExHandler 

' Define a handler for unhandled exceptions for threads behind forms.
AddHandler Application.ThreadException, AddressOf MYThreadHandler 

Private Sub MYExnHandler(ByVal sender As Object, _
ByVal e As UnhandledExceptionEventArgs) 
Dim EX As Exception 
EX = e.ExceptionObject 
Console.WriteLine(EX.StackTrace) 
End Sub 

Private Sub MYThreadHandler(ByVal sender As Object, _
ByVal e As Threading.ThreadExceptionEventArgs) 
Console.WriteLine(e.Exception.StackTrace) 
End Sub

' This code will throw an exception and will be caught.  
Dim X as Integer = 5
X = X / 0 'throws exception will be caught by subs below

У меня только что была эта проблема из-за несоответствия пространства имен. Мой XAML-файл был портирован, и у него было другое пространство имен, чем в коде файла.

Это может иметь две причины

1.Я нашел ошибку строки подключения в моем файле web.config Я изменил строку подключения и ее работу.

  1. Строка подключения верна, проверьте с помощью панели управления > services > Браузер SQL Server > начать или нет

Получена та же ошибка, решено изменение целевой платформы с " Смешанные платформы " на "любой процессор"

Эта ошибка возникает из-за того, что я не установил свой проект как Проект запуска

Когда я установил в своем текущем проекте Установить как стартовый проект , он исчез.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top