2010-08-09 3 views
5

Ich benutze den Debugger, um durch meinen Code zu gehen. Die Code-Datei in der ich bin hat usings an der Spitze, zum Beispiel einschließlichWatch window stopped akzeptiert einige usings

using System.Linq; 

In Visual Studio 2008 diese beim Debuggen auf das Überwachungsfenster aufzubringen, so konnte ich Erweiterungsmethoden verwenden, wie .First() und .ToArray() in das Uhrenfenster.

Aus irgendeinem Grund funktioniert dies nicht mehr in Visual Studio 2010. Und es sind nicht nur Erweiterungsmethoden; Ich muss nun jeden Typ mit dem vollen Namensraum qualifizieren, was wirklich nervig ist.

Was noch seltsamer ist, ist, dass das IntelliSense im Watch-Fenster so tut, als ob die Usings vorhanden wären. Mit anderen Worten, es tut Liste .ToArray() zum Beispiel. Aber dann zeigt das Überwachungsfenster der Fehlermeldung

‚<Typ>‘ enthält keine Definition für ‚ToArray‘ und keine Erweiterungsmethode ‚ToArray‘ ein erstes Argument vom Typ akzeptieren ‚<Typ>‘ gefunden werden konnte (möglicherweise fehlt eine using-Direktive oder ein Assemblyverweis?)

So, jetzt habe ich immer geben Sie die wirklich lange und lästige

System.Linq.Enumerable.ToArray(blah) 

Wie repariere ich das?

Antwort

0

Wie viele Bugs helfen könnte, es verschwunden, und ich habe keine Ahnung, warum. :(

2

Versuchen Sie es erneut, ohne an Prozess zu hängen (anstatt F5), und stellen Sie sicher, dass das Kontrollkästchen "Den VIsual Studio-Hostingprozess aktivieren" (Rechtsklick auf Projekt-> Eigenschaften-> Debuggen) aktiviert ist.

Eine Erklärung, warum scheint dies irgendwann zu arbeiten und manchmal nicht, und warum der Vorschlag, den ich gab, siehe JaredPar's blog post on the subject.

+0

+1, hatte ich das gleiche Problem. Es ist, weil ein Plugin, das ich benutze (Ncrunch) an den Prozess angehängt, nachdem es startet. –