Depuis sa version 2015, Visual Studio propose une fenêtre de diagnostic en temps réel très utile. Mais elle n'est pas forcément adaptée aux solutions complexes qui ont bien souvent plusieurs projets de démarrage. Voilà une astuce permettant de sélectionner le projet de démarrage à diagnostiquer.
La fenêtre des outils de diagnostic de Visual Studio regroupe un ensemble d'informations utiles à propos de l'exécution de l'application en cours de débogage :
Lorsque dans Visual Studio plusieurs projets de démarrage sont exécutés en même temps, typiquement un serveur et un client, la fenêtre de diagnostic ne montre que les informations de la première application démarrée (en général, le serveur).
Pour pouvoir visualiser les informations de la deuxième application (le client), il suffit simplement de la faire remonter dans la liste des projets de démarrage :
Et dans le cas (fréquent) où le client nécessite le serveur pour fonctionner, il faut alors retarder légèrement le démarrage du client, le temps que le serveur soit démarré et opérationnel. Cela se fait assez simplement en utilisant une méthode de type "Ping", côté serveur. Côté client, au démarrage, une boucle appelle cette méthode à intervalles régulier jusqu'à ce qu'elle réponde.
Cette fonctionnalité peut même s'avérer utile pour l'application en production, au cas où le serveur serait indisponible (dans ce cas, la boucle devra bien sûr s'arrêter au bout d'un moment pour ne pas bloquer indéfiniment l'application).
Le fait de pouvoir sélectionner l'application à diagnostiquer a déjà été demandé par la communauté. Alors si vous aussi la jugez utile, allez la supporter en votant pour elle :
- sur le site de feedback Microsoft : No method to control target of Diagnostic Tools window
- sur le site UserVoice dédié à Visual Studio : Support for multiple startup projects with Diagnostic Tools window
Et pour plus d'informations sur les outils de diagnostic, consultez la MSDN : Outils de profilage.