Debuggen in NuGet-Paketen mithilfe von SourceLink

Die SourceLink-Technologie ermöglicht das Debuggen von Quellcode von .NET-Assemblys aus NuGet, die .PDBs mit Links zu Quelldateien ausliefern. SourceLink wird ausgeführt, wenn Entwickler ihr NuGet-Paket erstellen und Metadaten der Quellcodeverwaltung in Assemblys und in das Paket einbetten. Wenn SourceLink in Visual Studio für Mac aktiviert ist, erkennt die IDE, ob Quelldateien für installierte Pakete verfügbar sind. Visual Studio für Mac bietet dann an, sie herunterzuladen, wodurch Sie den Paketcode schrittweise durchlaufen können. SourceLink funktioniert auch mit dem Code der Mono Base Class Library für Xamarin-Projekte, sodass Sie auch in den Code von .NET Framework springen können. SourceLink bietet Metadaten zur Quellcodeverwaltung, um das Debuggen zu optimieren.

Hinweis

Visual Studio für Mac unterstützt derzeit keine Symbolserver. Aus diesem Grund wird SourceLink mit Metadaten, die auf Symbolservern gehostet werden, nicht unterstützt.

Um SourceLink in Visual Studio für Mac zu aktivieren, wechseln Sie zu Visual Studio > Preferences... > Projects > Debugger (Visual Studio > Voreinstellungen > Projekte > Debugger) und stellen Sie sicher, dass das Kontrollkästchen Step into external code (In externen Code springen) aktiviert ist.

Screenshot des Dialogfelds „Preferences“ (Voreinstellungen) mit dem Kontrollkästchen „Step into external code“ (In externen Code springen)

Sie können die Einstellung unter Download External Code (Externen Code herunterladen) nach Belieben ändern:

  • Fragen: Visual Studio für Mac wird Sie auffordern, den externen Code herunterzuladen
  • Immer: Visual Studio für Mac wird den externen Code automatisch herunterladen
  • Nie: Visual Studio für Mac lädt den zugehörigen externen Code nicht herunter

Standardmäßig ist Fragen aktiviert. Sie erhalten die folgende Eingabeaufforderung, wenn ein externer Code für ein NuGet-Paket gefunden wird:

Screenshot der Eingabeaufforderung, die angezeigt wird, wenn externer Code für ein NuGet-Paket gefunden wird

Siehe auch