Pergunta

Estou depurando um aplicativo em um servidor Azure usando o IntelliTrace.Às vezes consigo ver o código que originou uma exceção, mas às vezes não consigo.E as exceções cujo respectivo código não consigo ver são sempre as mesmas.

Há algum motivo pelo qual continuo recebendo a mesma mensagem (Nenhuma fonte disponível) na nova guia quando clico duas vezes na exceção para começar a depurá-la?

Já sei qual é a exceção que preciso fazer para resolver, mas também preciso saber onde encontrar o código!Ajuda.

Exemplo

@SLaks

Um exemplo das exceções que recebo é este:

"The condition specified using HTTP conditional header(s) is not met."

Pilha de chamadas:

[External Code] 
    System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown}) 
[External Code] 
System.dll!System.Net.ContextAwareResult.Complete(System.IntPtr userToken = {unknown})  
System.dll!System.Net.HttpWebRequest.ProcessResponse()  
System.dll!System.Net.HttpWebRequest.SetResponse(System.Net.CoreResponseData coreResponseData = {unknown})  
System.dll!System.Net.ConnectionReturnResult.SetResponses(System.Net.ConnectionReturnResult returnResult = {unknown})   
System.dll!System.Net.Connection.ReadComplete(int bytesRead = {unknown}, System.Net.WebExceptionStatus errorStatus = {unknown}) 
System.dll!System.Net.Connection.ReadCallback(System.IAsyncResult asyncResult = {unknown})  
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown}) 
System.dll!System.Net.Security._SslStream.ProcessFrameBody(int readBytes = {unknown}, byte[] buffer = {unknown}, int offset = {unknown}, int count = {unknown}, System.Net.AsyncProtocolRequest asyncRequest = {unknown})   
System.dll!System.Net.Security._SslStream.ReadFrameCallback(System.Net.AsyncProtocolRequest asyncRequest = {unknown})   
System.dll!System.Net.FixedSizeReader.CheckCompletionBeforeNextRead(int bytes = {unknown})  
System.dll!System.Net.FixedSizeReader.ReadCallback(System.IAsyncResult transportResult = {unknown}) 
System.dll!System.Net.LazyAsyncResult.Complete(System.IntPtr userToken = {unknown}) 
[External Code] 
System.dll!System.Net.ContextAwareResult.Complete(System.IntPtr userToken = {unknown})  
System.dll!System.Net.Sockets.BaseOverlappedAsyncResult.CompletionPortCallback(uint errorCode = {unknown}, uint numBytes = {unknown}, System.Threading.NativeOverlapped* nativeOverlapped = {unknown})  
[External Code] 

EDITAR:

As exceções são realmente causadas por mim.Aqui está um exemplo:

AzureBrightWebRole.dll!AzureBright.Common.EasyPay.EasyPay.CheckFinishedPayments()   
AzureBrightWorkerRole.dll!AzureBrightWorkerRole.WorkerRole.Run()    
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.StartRoleInternal() 
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.StartRole() 
Microsoft.WindowsAzure.ServiceRuntime.dll!Microsoft.WindowsAzure.ServiceRuntime.Implementation.Loader.RoleRuntimeBridge.AnonymousMethod()   
[External Code] 

Um serviço web que eu estava acessando parecia ter parado de funcionar.No final, descobri que não tinha nada a ver com isso!Reproduzi o erro localmente e estava acontecendo direto no meu código.Por que não consigo ver o código onde ocorreu o erro e em quais condições?Embora não tenha certeza, não me lembro se o código foi alterado e foi feito hoje.

Foi útil?

Solução

O IntelliTrace só mostrará o código-fonte quando houver algum código para mostrar.

Todo o código no rastreamento de pilha que você postou está dentro da estrutura .Net, portanto, não há código-fonte para mostrar.

Você provavelmente pode obter o código-fonte aqui no Fonte de referência do .Net Framework.

Esta exceção, e muitas outras semelhantes, são internas ao ASP.Net e devem ser ignoradas.

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