PDB-Dateien mit der Common Compiler Infrastructure auslesen

Wie kann man zu einer Klasse bzw. Methode die Quelldatei und die Zeilennummer auslesen? Microsoft hat auf Codeplex dazu ein nettes Projekt veröffentlicht: die  Common Compiler Infrastructure: Metadata API. Folgender Code ist nötig: using Microsoft.Cci; … var host = new PeReader.DefaultHost(); var r = (IAssembly)host.LoadUnitFrom(@“D:\Development\DonkeyTools\src\DonkeyPlanner\bin\Debug\DonkeyPlanner.exe“); PdbReader/*?*/ pdbReader = null; string pdbFile = Path.ChangeExtension(@“D:\Development\DonkeyTools\src\DonkeyPlanner\bin\Debug\DonkeyPlanner.exe“, „pdb“); if […]

Mehr lesen »

DonkeyTrace

Seit einiger Zeit unterstützt DonkeySpecs die Verknüpfung von Source Code zur Spezifikation (Tracing). Bisher war man auf die Verweissuche von Visual Studio  angewiesen, um das Tracing zu starten. Demnächst (wenn es veröffentlicht ist) kann man diese „Verweissuche“ auch direkt aus DonkeySpecs starten. Man muss lediglich den Pfad auf die Programmdatei oder Bibliothek angeben und sieht […]

Mehr lesen »

Tracing von Features im Quellcode

Machen wir uns nichts vor. Selbst Vorzeige-Projekte mit Domain Driven Design haben das Problem, dass Funktionalität über viele Klassen zerstreut liegt. Wenn ein Feature bzw. eine Funktion „angefasst“ werden soll, müssen viele Klassen angepasst werden. In einer sauberen Softwarearchitektur ist das sogar per se so, denn eine Funktion benötigt ja eine GUI, zumindest etwas Geschäftslogik, […]

Mehr lesen »