J'ai écrit un article complet traitant de cette question; il a été publié sur Simple-Talk.com (LINQ Secrets Révélés: le Chaînage et de Débogage), en décembre 2010. Vous pourriez avoir besoin de s'inscrire pour lire l'article (site semble aller par le biais de quelques changements ces derniers jours) donc, ici, sont quelques uns des faits saillants de l'article:
Je parle de LINQPad (comme mentionné plus tôt par OwenP) comme un excellent outil externe à Visual Studio. Payer une attention particulière à son extraordinaire méthode Dump (). Vous pouvez injecter ce à un ou plusieurs points dans une LINQ chaîne pour voir vos données visualisées dans un étonnamment propre et claire de la mode.
Mais il existe plusieurs techniques pour utiliser au sein de Visual Studio parce que parfois c'est juste pas pratique pour migrer un morceau de code à LINQPad:
(1) s'Injecter des appels à la Dump() extension de la méthode que je présente dans mon article afin de permettre à l'enregistrement. J'ai commencé avec Bart De Smet Watch() la méthode dans son article instructif LINQ to Objects – Débogage et ajouté un peu de l'étiquetage et de la colorisation à améliorer la visualisation, mais encore il n'est rien en comparaison de LINQPad de la sortie de Vidage.
(2) Apporter LINQPad de visualisation du droit dans Visual Studio avec Robert Ivanc de LINQPad Visualizer complément. Vous ne savez pas si c'est grâce à mon insistance :-), mais les quelques inconvénients que présente quand j'ai écrit mon article ont maintenant tous été admirablement résolu dans la dernière version. Il a plein VS2010 soutien et vous permet d'examiner tout objet que vous aimez lors du débogage.
(3) Incorporer nop énoncés dans le milieu de votre LINQ de la chaîne de sorte que vous pouvez définir des points d'arrêt, comme décrit précédemment par l'Incroyable Pete.
Dans mon article je vais vous donner une pléthore d'illustrations et d'exemples de code qui vous permettra de découvrir chacune de ces approches et plus.
[J'ai emprunté des pièces de cette réponse de l'autre AFIN que les réponse que j'ai fournie; la question de Débogage des Requêtes LINQ couvre eseentially le même sol.]