2015-06-24 14 views
9

Ora questo è interessante!Perché le mie visualizzazioni MVC sono state compilate con PDB?

Ho appena notato che le eccezioni nelle mie viste MVC hanno numeri di linea nella traccia dello stack! Il che significa: le mie opinioni sono compilate con PDB.

Ho guardato la cartella "File ASP.NET temporanei sul mio server - e , ci sono file PDB per ogni vista.

Ho <compilation debug="false"/> nel mio web.config.

Perché questo sta accadendo e come lo disabilito? Questo è il server di produzione, quindi mi piacerebbe disabilitare la generazione pdb.

Ho controllato il mio "web.config", "Views/web.config", "machine.config", predefinito "web.config" in windir%\Microsoft.NET\Framework64\[version]\config\ - Penso di non aver trovato nessuna opzione del compilatore sospetto lì .. Dove guardo?

O sto solo perdendo tempo e questa è l'opzione predefinita che non può essere modificata?

PS. Maggiori informazioni, nel caso in cui: questa è un'app MVC 4, le Views sono scritte in Razor.

+0

ho il sospetto che sia solo un difetto che non si può cambiare. Quando compilo un qualsiasi progetto (ad esempio una libreria di classi) in modalità Release, ottengo comunque file pdb generati. –

+1

Penso che se si utilizza la funzione Pubblica, non emette i PDB e include solo i file minimi necessari. – br4d

risposta

5

Trovato!

Sembra che questa sia l'impostazione predefinita per Razor - it is always compiled with DEBUG option and you can't change it - ma penso di aver trovato la soluzione.

L'aggiunta di questo al vostro machine.config sembrano risolvere il problema:

<configuration> 
    <system.web> 
     <deployment retail="true"/> 
    <system.web> 
</configuration> 

Almeno io non vedo alcuna più PDB del mio "Temp ASP.NET Files".

Leggi la bandiera sul blog di ScottGu: http://weblogs.asp.net/scottgu/Don_1920_t-run-production-ASP.NET-Applications-with-debug_3D001D20_true_1D20_-enabled

Problemi correlati