2010-02-03 13 views
28

Sto usando C# che proviene da uno sfondo Java - Ho un'eccezione ma non mi dice il numero di riga - Solo il nome del metodo.C# Eccezioni che non forniscono i numeri di riga

È solito? È giù per le build di debug/release ??

+0

Sì, senza le informazioni di debug il CLR non può segnalare il numero di riga. Non dovrebbe comunque essere troppo difficile trovare il metodo e osservare il problema in una sessione di debug. – Lazarus

+0

dupe: http://stackoverflow.com/questions/1328836 – raven

+0

possibile duplicato di [Mostra il numero di riga nella gestione delle eccezioni] (http://stackoverflow.com/questions/688336/show-line-number-in-exception-handling) – bmargulies

risposta

36

I numeri di riga devono essere disponibili durante la compilazione in Debug se si conservano i file pdb nella directory dell'applicazione.

Questo funzionerà anche in Versione se si attiva la creazione del PDB, come da Justin's answer.

Se siete interessati, ulteriori informazioni sono disponibili all'indirizzo PDB Files (MSDN)

13

La StackTrace proprietà della classe Exception contiene i numeri di riga, almeno se le informazioni di debug (file PDB) è disponibile:

using System; 
class Program { 
    public static void Main() { 
     try { 
      throw new Exception("test"); 
     } catch (Exception e) { 
      Console.WriteLine(e.StackTrace); 
     } 
    } 
} 

darà il seguente output con il file PDB:

at Program.Main() in X:\code\test\test\Program.cs:line 6 

e questo senza:

at Program.Main() 
4

Assicurarsi che i file PDB dell'applicazione siano distribuiti con l'applicazione. I file PDB sono i file utilizzati dal CLR per determinare i numeri di riga del codice sorgente.

15

questo è giù per i simboli di debug non essere disponibile - quando si genera il progetto di assicurarsi di avere "piena" impostato nelle impostazioni di debug (Project properties ->Build ->Advanced ->Debug info) e anche fare in modo che il i file pdb risultanti sono presenti accanto alla stessa nella stessa directory quando si esegue l'app.

Problemi correlati