0

J'ai plusieurs projets et un ne me permettra pas de déboguer le code en raison du non-chargement des symboles.Mes symboles de projets ne sont pas chargés pour le débogage

Ce qui rend ce projet différent des autres est qu'aucune de ses classes n'est appelée directement (elles sont toutes chargées à l'aide de Windsor).

J'ai d'autres projets qui ont aussi des classes chargées en utilisant Windsor, mais ils ont aussi des classes que j'instancie manuellement. J'ai décidé d'imiter ce comportement et de créer une classe factice et de l'instancier. Bingo! les symboles ont été chargés. Cependant, je ne souhaite pas conserver une classe fictive et l'instancier juste pour permettre le débogage.

J'ai aussi essayé (pour tenter de les forcer chargés) spécifiant les fichiers source dans débogage fichiers source sous Options pour la solution, et en précisant l'emplacement de symbole dans Outils-> Options-> Debugging- > Symboles, mais aucune de ces options n'a fonctionné (ou ne les a peut-être pas configurées correctement).

Y a-t-il un moyen de forcer le chargement des symboles de ce projet, soit par Visual Studio, soit par Windsor?

Code de Windsor au cas où c'est nécessaire. Où AssemblyB est celui pour lequel je ne peux pas charger les symboles.

IWindsorContainer _container = new WindsorContainer().Install(FromAssembly.Named("AssemblyA")).Install(FromAssembly.Named("AssemblyB")); 

Et les classes sont installées comme ceci.

public class MapperInstaller : IWindsorInstaller 
{ 
    public void Install(IWindsorContainer container, IConfigurationStore store) 
    { 
    container.Register(
     Classes.FromThisAssembly() 
     .BasedOn(typeof(IDataMapper<>)) 
     .WithServiceAllInterfaces() 
     .LifestyleTransient() 
    ); 
    } 
} 

Répondre

0

Je ne sais pas ce que fait Windsor, mais quel genre de projets avez-vous? Vous pouvez avoir plusieurs sessions de débogage. Faites un clic droit sur le projet qui "ne charge pas les symboles", allez dans Déboguer et cliquez sur Démarrer une nouvelle instance. Ceci est valable pour les projets pouvant être exécutés. Pour les bibliothèques de classes, vous avez juste besoin d'une référence pour les déboguer

+0

J'ai réussi à faire ce travail en référençant le projet dans mon projet de démarrage. J'ai eu ** projet de démarrage ** référence ** projetA ** qui référencé ** projetB et projetC ** avec le projet C étant celui pour lequel les symboles n'ont pas été chargés. Cette configuration me semble bien, mais pour une raison quelconque ne fonctionnait pas. En référençant projectC dans le projet de démarrage (même s'il n'en a pas besoin), les symboles sont en cours de chargement. – energ1ser