¿Cuál es su propósito? ¿Su IL generado por compilador de C# o producido dinámicamente en tiempo de ejecución? Si es el primero, puede usar un truco para volver a compilar su binario a través del ilasm
.
- Compila el código C# como lo harías normalmente. No importa si está optimizado o no, pero debe especificar la opción de compilación para producir símbolos de PDB completos.
- Usa ildasm para convertir tu archivo binario a .il. Es la opción Volcar en el menú.
volver a compilar el archivo .il para obtener un nuevo binario (y unos nuevos símbolos)
ilasm .il [/ exe |/dll]/depuración
Ahora al depurar que el montaje específico que verá el código IL en lugar del código C#. También verá a líneas coincidentes de archivo original C# si selecciona la opción apropiada en el paso 2.
Para el caso de IL generado dinámicamente, me basta con utilizar WinDbg with SOS extension. Puede volcar IL y atravesarlo, pero lleva un poco acostumbrarse.
Te será difícil encontrar eso. El mapeo del código de máquina a IL es tenue y altamente dependiente del jitter. Hay más de uno. –
+1 por la frialdad de tal opción si está disponible. –