0

Ich möchte Code-Quelle von web-api 2 (Version 5.2.3) eingeben/debuggen, um es zu verstehen.Wie gehe ich in die Code-Quelle von web.api 2 und System.Web dll

Ich habe eine einfache Web-API-Anwendung erstellt und in der WebApi.config, ich habe einen Haltepunkt an dieser Linie gefassten:

config.Routes.MapHttpRoute(
      name: "ExcludedRoute", 
      routeTemplate: "api/{controller}/{action}", 
      defaults: new { id = RouteParameter.Optional }, 
      constraints: new { Controller = "healthcheck", action = "check" } 
     ); 

I innerhalb des MapHttpRoute Verfahrensschritt könnte und die andere Klassen, aber der Debugger konnte nicht innerhalb der Strecke Klasse von der System.Web dll, unter dem Bild Schritt:

enter image description here ich habe versucht, diese Symboldatei Stellen zu verwenden: 012.300.

Ich habe auch das dotpeek-Tool zum Generieren der PDB-Dateien aus dem bin-Ordner verwendet, indem ich die Funktion "copy local" der referenzierten Assemblies auf true gesetzt habe, aber ohne Erfolg. Der Weg der system.web dll ist

C: \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework.NETFramework \ v4.5 \ System.Web.dll

Ich bin wundert sich, warum der Debugger nicht in die Route-Klasse, die zur system.Web dll gehört, treten kann, seine Version ist 4.0 und die Version von web.api ist die 5.2.3.

In meiner Suche habe ich die Quellcodequelle der asp.net heruntergeladen und ich fand, dass das Projekt System.Web.Http.WebHost die HttpWebRoute-Klasse enthält.

Irgendeine Idee?

Danke!

Antwort

0

Assembly System.Web.pdb war in der .NET Framework-Quellcode. Sie müssen Visual Studio zum Debuggen von .NET Framework im Menü Extras -> Optionen -> Debuggen -> Allgemein konfigurieren.

Referenz:

How do I debug .NET 4.6 framework source code in Visual Studio 2017?

+0

Wie ich in meiner Frage erwähnt, habe ich mit dem Standard-Source-Server Visual Studio konfiguriert, aber das Ergebnis war nicht gut. Ich habe es vorgezogen, das dotpeek-Tool zu verwenden, um die pdb-Dateien zu erzeugen, aber selbst damit erlaubte mir die system.web.pdb nicht, in die route-Klasse zu treten. –

+0

@Issa Dawaji, So stellen Sie die richtigen Einstellungen wie dieses Dokument ein: https: //referencesource.microsoft.com/setup.html, habe ich recht? Wenn ja, erhalten Sie während des Debuggens Ihrer App Warn- oder Fehlermeldungen? –

Verwandte Themen