2010-09-23 9 views
5

Quali sono i numeri in una traccia di stack .NET su una pagina di errore ASPX (vedi immagine)? Non sembrano essere numeri di linea in quanto sono troppo grandi? In che modo questi numeri possono aiutarmi a determinare la linea di codice che ha generato l'eccezione?Quali sono i numeri in una traccia di stack .NET su una pagina di errore ASPX?

Stack trace example

+1

Questo era l'offset nel codice nativo: http://odetocode.com/Blogs/scott/archive/2005/01/25/funny-numbers-in-my-stack-trace.aspx – rickythefox

risposta

9

EDIT: Dato che questa è stata segnata corretto, potrei anche modificarlo per renderlo così :)

Loro sono offset all'interno del codice nativo JITted del metodo. Sfortunatamente ciò significa che non aiutano molto quando cercano di capire cosa sta succedendo. Vedi this blog post per un esempio più dettagliato.

+1

Potrebbero anche essere * offset nativi * (come si otterrebbe con una traccia dello stack nativo), in pratica dubito che ciò possa fare alcuna differenza (il problema con i grandi offset nativi che indicano simboli non corrispondenti non si applica a .NET). – Richard

+0

Offset da cosa? Il metodo InitView sopra non è nemmeno vicino a 1064 linee IL ... – rickythefox

+0

@Crassy: Non IL * lines *, ma IL * offset * - come in, i numeri mostrati a sinistra in ILDASM. Una singola istruzione può richiedere diversi byte di IL. –

Problemi correlati