web-dev-qa-db-fra.com

Comment déboguer une procédure stockée dans VS 2015?

Je sais que cela a été demandé à plusieurs reprises, je les ai lues. J'ai coché la case [Activer le débogage de SQL Server] dans tous mes projets de la solution.

Mes projets:

  • Application Web ASP.NET
  • Bibliothèque de classe DAL. (Le DAL utilise un fichier .dbml hérité pour générer le code encapsuleur SP.) Aucun mappeur OR ni ADO.NET direct utilisé dans le projet.
  • SQL Server 11.0.3153

Je voudrais déboguer mes SP appelés lors du débogage du code C # dans VS. Dans l’idéal, il convient d’intervenir dans le SP, mais si cela n’est pas pris en charge, casser le SP sur un point d’interruption défini. 

Malheureusement, il ne fait ni l'un ni l'autre. Si je définis un point d'arrêt dans le SP, ce n'est pas un cercle rouge rempli, mais un vide, ce qui n'est pas bon signe. (Je configure ce point d'arrêt dans l'Explorateur de serveurs en ouvrant une connexion de données et en ouvrant le SP dans l'éditeur VS.

Qu'est-ce que je rate?

13
g.pickardou

Instructions générales, basées sur mon expérience et mes recherches.

  1. Exécutez Visual Studio (version de la communauté, dans mon cas) en tant qu'administrateur (pour moi, le débogage d'un processus stocké à partir de VS ne fonctionne que lorsque VS est exécuté en tant qu'administrateur)
  2. Accédez à l'explorateur de solutions, cliquez avec le bouton droit de la souris sur votre projet et sélectionnez Propriétés.
  3. Cliquez sur l'onglet Web et assurez-vous que SQL Server est coché. Sauver et fermer.
  4. Cliquez sur le menu Affichage, puis sur Explorateur d'objets SQL Server.
  5. Dans l'explorateur d'objets SQL Server, développez SQL Server et si vous ne voyez pas votre serveur SQL Server, cliquez avec le bouton droit sur SQL Server et ajoutez-le.
  6. Cliquez avec le bouton droit sur le serveur SQL que vous venez d'ajouter et assurez-vous que le débogage d'application et le débogage autorisé SQL/CLR sont cochés.
  7. Développez votre instance SQL Server que vous avez ajoutée et recherchez la procédure stockée qui vous intéresse.
  8. Cliquez avec le bouton droit de la souris sur SP, puis sur Afficher le code.
  9. Mettez un point de rupture où vous le souhaitez.
  10. Courez et appréciez.

Vous devrez peut-être faire certaines de ces choses la prochaine fois que vous voudrez déboguer un proc stocké de VS après avoir fermé VS et l'ouvrir plus tard.

37
Reid

J'ai eu le même problème...

Dans le menu déroulant "Configurations de solution", la configuration sélectionnée était "Débogage (actif)". J'ai changé cela en "Debug".

Une fois la modification apportée, le débogueur a fonctionné normalement et l’option "Debug (Actif)" a disparu de la liste.

 Screenshot

0
HGreene