2016-01-26 2 views
13

D'abord, j'ai créé un assembly de test HelloWorld.dll que je veux déboguer et construit avec la configuration de version.Le point d'arrêt de l'assembly décompilé de .Net Reflector n'est jamais atteint pendant le débogage dans Visual Studio

namespace HelloWorld 
{ 
    public class HelloClass 
    { 
     public string SayHello(string name) 
     { 
      return "Hi " + name + "!"; 
     } 
    } 
} 

Ensuite, j'ai créé projet Standart ASP.NET MVC et:

  • HelloWorld.dll Referenced Assemblée
  • méthode modifiée About de HomeController

    public ActionResult About() 
    { 
        var testingClass = new HelloClass(); 
        ViewBag.Message = testingClass.SayHello("John"); 
        return View(); 
    } 
    
  • Via .NET réflecteur Explorateur d'objets décompilé Assemblage HelloWorld

  • Mettre à l'intérieur de la méthode SayHello point d'arrêt (dans le fichier décompilé)
  • débogage Exécuter dans IIS expresse ou IIS et demander ~/Home/About Page

Résultat: Brekpoint est jamais touché.

Quand je vais à Debug -> Windows -> Modules il semble que les symboles pour l'assemblage HelloWorld.dll a été chargé: enter image description here

Alors, qu'est-ce que je fais mal?

EDIT: J'utilise Visual Studio 2015 Mise à jour 1 et Redgate réflecteur 8.5

Répondre

3

Après des heures et des heures de recherche et de contacter l'assistance Redgate il semble être un bug dans leur logiciel.

Solutions:

  1. utiliser Visual Studio 2013, où il fonctionne comme prévu
  2. En 2015 VS aller à .NET Reflector -> Generate PDBs et sélectionnez C# version à v4.5. Réflecteur a quelques problèmes avec C# version v4.6 Choose Assemblies to Debug