Ошибка «Исключение было вызвано целью вызова» (mscorlib) - PullRequest
53 голосов
/ 15 марта 2009

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

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

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

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

System.RuntimeMethodHandle._InvokeMethodFast.

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

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

Ответы [ 8 ]

55 голосов
/ 15 марта 2009

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

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

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

Удачи!

17 голосов
/ 04 августа 2010

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

3 голосов
/ 09 марта 2013

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

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

2 голосов
/ 25 июня 2010
' 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
1 голос
/ 20 января 2016

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

0 голосов
/ 02 апреля 2019

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

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

0 голосов
/ 07 августа 2018

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

0 голосов
/ 24 января 2017

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

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

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