Der .NET Reflector ist nach der Übernahme durch redgate – wie zu erwarten - kostenpflichtig geworden. Da viele Entwickler nach einer kostenlosen Variante suchen, hatte ich vor einiger Zeit schon mal über ILSpy getwittert. Dies ist zwar ein netter Disassembler, benötigt aber schon noch ein wenig Wartung und Liebe.
Soeben bin ich auf das dotPeek Early Access Programm von JetBRAINS gestoßen. Die Website dazu klingt vielversprechend:
- Decompiling .NET 1.0-4.0 assemblies to C#
- Quick jump to a specific type, assembly, symbol, or type member
- Effortless navigation to symbol declarations, implementations, derived and base symbols, and more
- Accurate search for symbol usages
with advanced presentation of search results - Overview of inheritance chains
- Support for downloading code from source servers
- Syntax highlighting
- Complete keyboard support
- dotPeek is free!
Also gleich mal den Download der Version 1.0.0.1219 angestartet und zum Test geschritten. Die Assembly-Auswahl erfolgt entweder aus dem Filesystem oder direkt vom GAC. Referenzierte Assemblies werden automatisch nachgeladen. Per Decompiled Sources kann die Dekompilierung gestartet werden:

Das Ergebnis ist wie folgt:

Wurde die Debug-Variante einer Assembly geladen, kann daraus via Sources from Symbol Files bezogen werden:

Unterstützt wird auch eine ausreichende Navigation, wie nachfolgend zu sehen ist:

Es stehen noch weitere Möglichkeiten zur Verfügung, die auf jeden Fall dafür sprechen, dieses Tool in der nächsten Zeit im Praxiseinsatz zu testen. Auf den ersten Blick macht es – zumindest für mich – einen besseren Eindruck als ILSpy.