I have a webforms ASP.NET application with lots of user controls (*.ascx). When I start with debugging, it appears to reload symbols for each control, each of which takes a second or two; as a result the app takes about a minute and a half to start any time the code changes. (I can subsequently stop and start debugging very quickly as long as there are no code changes.)
In the output window, I have dozens of lines like these:
'WebDev.WebServer40.EXE' (Managed (v4.0.30319)): Loaded 'C:\Users\Herb Caudill\AppData\Local\Temp\Temporary ASP.NET Files\root\1f256061\12a5d99\App_Web_hcj5xynv.dll', Symbols loaded.
'WebDev.WebServer40.EXE' (Managed (v4.0.30319)): Loaded 'C:\Users\Herb Caudill\AppData\Local\Temp\Temporary ASP.NET Files\root\1f256061\12a5d99\App_Web_facettextboxfilter.ascx.b3b3f5d8.obkscoie.dll', Symbols loaded.
'WebDev.WebServer40.EXE' (Managed (v4.0.30319)): Loaded 'C:\Users\Herb Caudill\AppData\Local\Temp\Temporary ASP.NET Files\root\1f256061\12a5d99\App_Web_editgridcolumnchooser.ascx.b3b3f5d8.o1vmswte.dll', Symbols loaded.
'WebDev.WebServer40.EXE' (Managed (v4.0.30319)): Loaded 'C:\Users\Herb Caudill\AppData\Local\Temp\Temporary ASP.NET Files\root\1f256061\12a5d99\App_Web_editgridimporttools.ascx.b3b3f5d8.mslzoqjj.dll', Symbols loaded.
'WebDev.WebServer40.EXE' (Managed (v4.0.30319)): Loaded 'C:\Users\Herb Caudill\AppData\Local\Temp\Temporary ASP.NET Files\root\1f256061\12a5d99\App_Web_facetsearchpager.ascx.b3b3f5d8.b-mkmweb.dll', Symbols loaded.
'WebDev.WebServer40.EXE' (Managed (v4.0.30319)): Loaded 'C:\Users\Herb Caudill\AppData\Local\Temp\Temporary ASP.NET Files\root\1f256061\12a5d99\App_Web_photogallery.ascx.b3b3f5d8.0mzg-l3y.dll', Symbols loaded.
'WebDev.WebServer40.EXE' (Managed (v4.0.30319)): Loaded 'C:\Users\Herb Caudill\AppData\Local\Temp\Temporary ASP.NET Files\root\1f256061\12a5d99\App_Web_facetcheckboxfilter.ascx.b3b3f5d8.krw3yihh.dll', Symbols loaded.
Almost none of these controls have anything to do with the page I’m debugging. Is there any way to speed up the debug process by not loading all these symbols I don’t need?
Note: There are many similar questions that are answered with “delete all breakpoints” and/or issues to do with loading Microsoft symbols over the network. Neither one of those is the issue here.
At first I think that your issue that load many dll is maybe because you do not have turn off the compiler batch, so on each change the visual studio make more than one page compile.
So I suggest to try this answer https://stackoverflow.com/a/9199027/159270 and its worked.
So set the
optimizeCompilationsto true, andbatchto falseFor asp.net version 3.5 must use this patch in order to work with this optimize switch.
http://support.microsoft.com/kb/961884
Do not make the same thing on the online server.