Mój scenariusz: Chcę zapisać w pliku logu część kodu, w którym wystąpił wyjątek (na przykład 5 linii przed i 5 linii po linii, w których wystąpił wyjątek - lub przynajmniej cały kod tej metody).Jak dekompilować pdb, aby uzyskać kod źródłowy C#?
Mój pomysł polega na dekompilacji pliku pdb w kodzie C#, a z tego dekompilowanego pliku znajdź metodę, która przechodziła w wyjątek w bloku catch.
Plik Pbd istnieje, a moja aplikacja jest tworzona jako wersja do debugowania. Wiem, że istnieją narzędzia, które pozwalają poprzez GUI (na przykład Reflector) dekompilować, ale chcę mieć tę funkcjonalność z mojego kodu.
Jak to zrobić?
CLR już korzysta z pliku .pdb. To właśnie tworzy adnotacje kodu źródłowego i numeru wiersza w StackTrace wyjątku. Porównaj ze stosem, który otrzymujesz bez pliku .pdb, aby zobaczyć różnicę. Nie ma sensu szukać więcej, to jest możliwe. –