source paso net depurar c# .net debugging reference-source

net - depurar paso a paso c#



No se puede ingresar al código fuente de.NET Framework (2)

Estoy usando Visual Studio 2013 y tengo un proyecto .NET 4.5.2. He configurado mis ajustes de acuerdo con la siguiente página:

http://referencesource.microsoft.com/setup.html

Con esta configuración, puedo ver que todos los símbolos necesarios se descargan y cargan, pero no puedo ingresar a un código como el siguiente:

var cookieContainer = new System.Net.CookieContainer();

Recibo un mensaje de Fuente no disponible .

Puedo pasar al siguiente código bien:

Console.WriteLine("test");

¿Tiene alguna idea de por qué puedo ingresar al código desde mscorlib.dll pero no puedo ingresar al código desde System.dll?


y tener un proyecto .NET 4.5.2

El número de versión es tu problema. Es un problema general con el origen de referencia, Microsoft no lo mantiene actualizado lo suficientemente bien como para proporcionar el origen de las nuevas versiones del marco. Y más preocupante, para actualizaciones de seguridad y estabilidad. Los chicos que trabajaron en esto son conscientes de este problema, lo notaron como un problema en su presentación, pero actualmente tiene, y siempre tuvo, el estado de un elemento // todo.

Es algo que puede visualizar, primero elimine System.pdb de su caché de símbolos (el que está en MicrosoftPublicSymbols). Luego comience a depurar su programa de prueba, el depurador recuperará un nuevo PDB del servidor. Use Depuración> Windows> Módulos, haga clic con el botón derecho en System.dll y seleccione "Información de carga de símbolos". En mi máquina que se ve así:

C:/projects2/ConsoleApplication407/bin/Debug/System.pdb: Cannot find or open the PDB file. C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.pdb: Cannot find or open the PDB file. C:/Windows/System.pdb: Cannot find or open the PDB file. C:/Windows/symbols/dll/System.pdb: Cannot find or open the PDB file. C:/Windows/dll/System.pdb: Cannot find or open the PDB file. C:/temp/symbols/System.pdb/c464b02c2bf04080adcad166dc729c151/System.pdb: Cannot find or open the PDB file. C:/temp/symbols/MicrosoftPublicSymbols/System.pdb/c464b02c2bf04080adcad166dc729c151/System.pdb: Cannot find or open the PDB file. SYMSRV: C:/temp/symbols/System.pdb/C464B02C2BF04080ADCAD166DC729C151/System.pdb not found SYMSRV: http://referencesource.microsoft.com/symbols/System.pdb/C464B02C2BF04080ADCAD166DC729C151/System.pdb not found http://referencesource.microsoft.com/symbols: Symbols not found on symbol server. SYMSRV: System.pdb from http://msdl.microsoft.com/download/symbols: 96985 bytes http://msdl.microsoft.com/download/symbols: Symbols downloaded from symbol server. C:/temp/symbols/System.pdb/C464B02C2BF04080ADCAD166DC729C151/System.pdb: Symbols loaded.

Puede verlo buscando el PDB en las ubicaciones normales y no lo encuentra. Luego contactando al SYMSRV. Primero va a http://referencesource.microsoft.com , como debería, pero ese servidor dice "no encontrado". Y obtendrá la copia del servidor msdl normal, el despojado que no tiene la información de depuración necesaria del archivo + número de línea.

No hay una solución limpia para esto, tendría que degradar su máquina nuevamente a la versión de origen de referencia. Algo que no puedo hacer con Windows 8.1. Y no debería hacerlo, yo uso VS2013. Redgate''s Reflector es una alternativa.

Creé un elemento UserVoice para esto, necesita muchos más votos.

Actualización: la fuente de referencia ahora se actualiza a 4.5.2 (marzo de 2015)


JetBrains DotPeek (actualmente versión 1.2) tiene una característica muy agradable que le permite no solo generar pdbs sino también servir esos pdbs localmente a través de un Servidor de símbolos incorporado para proporcionar símbolos a Visual Studio cuando está depurando. Obviamente, el código fuente es el código descompilado en lugar de la fuente real, pero puede ser muy útil, sin embargo, para aquellos momentos en que los servidores de símbolos MS normales no le brindan los pdbs que necesita.

Puede encontrar información sobre la función del servidor de símbolos en su sitio web .