Ich habe zwei Lösungen in meinem Arbeitsbereich, z. B. A und B.
Lösung A ist ein älteres Projekt, das ich vor einiger Zeit fertig codiert habe. In Lösung B muss ich einige Klassen aus Lösung A verwenden. Dazu füge ich einen Verweis auf die DLL eines der Projekte in Lösung A hinzu.
Das Problem ist, wenn ich versuche zu debuggen. Ich möchte auch in den Code von A eintreten können. Visual Studio kann den Code für diese Klassen nicht laden ("Für den aktuellen Speicherort ist kein Quellcode verfügbar.") Und ich kann nur die Demontage anzeigen, was nicht hilfreich ist.
Die einzige Möglichkeit, Klassen aus Lösung A zu debuggen, besteht darin, Lösung B auszuführen, alle Prozesse zu trennen (im Menüpunkt Debuggen) und den Prozess aus Lösung A anzuhängen.
Dies ist jedoch sehr unpraktisch und ich kann A ODER B nur auf einmal debuggen.
Gibt es eine Möglichkeit, in den Code der referenzierten DLLs einzusteigen (für die ich den Quellcode habe)?
Lösung: Mein Fehler war, dass ich dachte, dass ein Projekt nur Teil einer einzigen Lösung sein kann. Tatsächlich kann ein Projekt Teil einer beliebigen Anzahl von Lösungen sein.
Wenn Sie auf das alte Projekt verweisen müssen, sollten Sie das Projekt einfach zur Lösung hinzufügen. Klicken Sie dazu mit der rechten Maustaste auf die neue Lösung im Projektmappen-Explorer> Hinzufügen> Vorhandenes Projekt.
Anschließend können Sie die Projektreferenz hinzufügen. Wie andere geschrieben haben, sollten Sie wahrscheinlich die Verwendung von DLL-Verweisen auf Ihren eigenen Code (oder anderen Code, den Sie möglicherweise ändern und debuggen müssen) vollständig vermeiden.
Eine sehr gute Referenz zum Entwerfen von Lösungen finden Sie in MSDN .