analisi dello stack con numero di riga non corretta
-
26-09-2019 - |
Domanda
Perché uno spettacolo di stack trace "linea 0", , ma solo per un fotogramma nella traccia dello stack
ad es.
...
at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader()
at My.LibraryA.Some.Method():line 16
at My.LibraryB.Some.OtherMethod():line 0
at My.LibraryB.Some.Method():line 22
at My.LibraryA.Some.Method():line 10
Sfondo:
Ho una domanda che non riesce con un'eccezione, ed è registrando una traccia dello stack nel file di registro. Quando l'applciation è stato costruito, tutti i gruppi sono stati compilati con piena informazioni di debug (Proprietà del progetto -> Build -> Avanzate -> Debug Info -> Full), e così PDB file sono stati generati. Per aiutarmi diagnosticare dove l'errore sta venendo, ho lasciato cadere i file PDB nella directory bin
dell'applicazione, e riprodotto l'eccezione. Tutti i numeri di riga per ogni aspetto pila cornice corretti, ad eccezione di quella che visualizza "riga 0" come sorgente.
Soluzione
Questo era in effetti lungo la la messa in linea del loro metodo come suggerito Eric.
Sono riuscito a riprodurre l'errore originale a livello locale, ma solo durante la compilazione in una build di rilascio. Come ho avuto le PDB, ho potuto eseguire il codice e trovare il problema.