Pergunta

Eu tenho um site desenvolvido no ASP.NET 2.0 que está lançando o erro

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

no ambiente de produção. Não estava jogando esse erro no desenvolvimento.

A fonte é 'mscorlib', e o rastreamento da pilha diz o erro em

System.RuntimeMethodHandle._InvokeMethodFast.

A única coisa que mudei desde o meu último upload para a produção é que comecei a usar controles de associação (login, LoginView) e adicionei mais alguns procedimentos e tabelas armazenados, etc. Os membros dependem de um provedor personalizado que eu ' Escrevi.

Alguém tem uma idéia, por que isso pode estar acontecendo?

Foi útil?

Solução

Eu sugiro verificar uma exceção interna. Se não houver um, verifique seus logs para obter a exceção que ocorreu imediatamente antes deste.

Esta não é uma exceção específica da Web, também a encontrei no desenvolvimento de desktop-aplicativo. Em suma, o que está acontecendo é que o thread que recebe essa exceção está executando algum código assíncrono (via Invoke (), por exemplo) e esse código que está sendo executado de forma assíncrona está explodindo com uma exceção. Essa exceção de invocação de destino é o resultado dessa falha.

Se você ainda não o fez, coloque algum tipo de invólucro de log de exceção em torno dos retornos de chamada assíncronos que estão sendo chamados quando você acionar esse erro. Manipuladores de eventos, por exemplo. Isso deve ajudá -lo a rastrear o problema.

Boa sorte!

Outras dicas

Isso pode acontecer ao invocar um método que não existe.

Eu sei que é meio estranho, mas experimentei esse erro para o aplicativo AC# e, finalmente, descobri que o problema é o ícone do formulário! Quando mudei, tudo funcionou bem.

Devo dizer que tive esse erro apenas no XP não em 7 ou 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

Acabei de ter esse problema em uma incompatibilidade de namespace. Meu arquivo XAML estava sendo portado e tinha um espaço para nome diferente daquele no código atrás do arquivo.

Isso é pode ter 2 motivos

1.Eu encontrei o erro da string de conexão no meu arquivo web.config que havia alterado a string de conexão e seu funcionamento.

  1. A string de conexão é adequada e verifique com o painel de controle> Serviços> navegador do servidor SQL> começar ou não

Recebi o mesmo erro, resolvido alterando a plataforma de destino de "plataformas mistas" para "qualquer CPU"

Este erro ocorre para mim devido a eu não defini meu projeto como Projeto de inicialização

Quando eu defino meu projeto atual para Defina como projeto de inicialização Então desapareceu.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top