2010-07-27 7 views
33

Was ist das für ein "Vorbereiten der Lösung" -Dialog, den VS 2010 zeigt, wenn ich Lösungen öffne? Erscheint das für alle oder ist etwas an meiner Installation kaputt?Visual Studio 2010 Dialogfeld "Vorbereiten der Lösung"

Wer weiß, was es eigentlich macht?

+9

Ich weiß, das ist nur eine Verschwendung eines Kommentars, aber LMFAO. –

+0

@Erick_Robertson Guter Kommentar obwohl :) – Lazarus

+0

Ich vermute, dass es über die gleiche Menge an Arbeit VS2008 getan hat, wenn ein Projekt geöffnet, aber jetzt gibt es eine Fortschrittsleiste darauf, so dass Sie sagen können, wenn es fertig ist. Aber ich habe die Geschwindigkeiten nicht verglichen. –

Antwort

32

Hier ist die offizielle Geschichte, von Cameron McColl:

In Dev10 wir in der Lösung zur Verbesserung der Ladezeit investiert, indem man die Last asynchron zu machen. Leider ist diese Arbeit aus zeitlichen Gründen nicht in Dev10 übergegangen. Stattdessen haben wir uns entschieden, die Benutzererfahrung etwas besser zu machen, indem wir dem Benutzer Feedback geben, was während der Lösungsauslastung vor sich ging. Dies beinhaltete zunächst einen Dialog, der eine genaue Rückmeldung darüber lieferte, wie viele Projekte zusammen mit dem Namen des aktuell geladenen Projekts geladen wurden. Frühes Testen dieser Erfahrung ergab, dass es oft eine nicht-triviale Verzögerung gab (d. H. Der Spinning Donut und "nicht reagierend" Fenstertitel), nachdem die Projekte geladen wurden und die Existenz des Dialogs diese Verzögerung sehr offensichtlich machte, sobald der Dialog geschlossen wurde. Also, was ist die Verzögerung? Nach dem Laden der Lösungsprojekte laufen 2 Dinge ab. Zuerst werden alle zuvor geladenen Dokumente/Editoren wieder geöffnet und für einige Designer-Dateien kann dies einige Sekunden dauern. Zweitens und normalerweise viel schlechter rufen wir NotifyOnAfterSolutionOpen an, was ein Erweiterungspunkt in VS ist. Jeder Abonnent dieses Ereignisses wird an diesem Punkt seinen Code ausführen und dieser Code ist sehr oft sehr teuer. Für Dev10 hatten wir nicht die Zeit, um die Leistung all dieser Abonnenten zu verbessern und so wurde der Eindruck erweckt, dass ein zweiter Dialog erforderlich war, um klarzustellen, dass die Lösungslast noch im Gange war. Was wirklich nervt über den zweiten Dialog ist, dass es Ihnen nicht sagt, welcher Teil des Codes die Verzögerung verursacht und schlechter die Fortschrittskontrolle ist der Marquee-Stil, was bedeutet, dass es nicht determinant ist (im Gegensatz zum ersten Dialog).

Wir arbeiten weiter daran, nach Möglichkeiten zu suchen, um das Laden von Lösungen wirklich asynchron zu machen und nie so unangenehme Dialoge zu zeigen. In der Verteidigung des Dialogs zeigen unsere Untersuchungen, dass die meisten Menschen einen modalen Status-Dialog über den Donut oder die nicht reagierende Benutzeroberfläche bevorzugen. Natürlich bevorzugen alle keine Verzögerung und wir arbeiten daran für Dev11.

1

Es ist normal, soweit ich weiß. Es lädt die Lösungsdatei und führt die Hausverwaltung durch, um sicherzustellen, dass alle Tools für Sie entsprechend vorbereitet sind. Nicht sicher, worüber du geärgert wirst.

+10

Es ärgert mich, weil es war Niemals zuvor und wenn ich VS-Last ansehe, kommt es zu dem Punkt, an dem ich anfangen könnte, an älteren Versionen zu arbeiten, und dann ist es wie "OH WARTE, ICH WERDE NICHT WIRKLICH GETAN, ICH HABE NUR DIR. JEDES ANDERE MATERIAL, DAS ICH TUN HABE, WAR NUR EINE VERSCHWENDUNG DEINER ZEIT. JETZT SETZT ES SICH DORT, WÄHREND ICH DEINE LÖSUNG "VORBEREITE". LOL. " Ich werde mich rechtzeitig daran gewöhnen, aber jedes Mal, wenn ich eine Lösung öffne, bin ich ganz aufgeregt, um mit der Arbeit zu beginnen. Dann treffe ich diesen Dialog und muss noch 10 Sekunden dort sitzen. (Ja das ist alles kleinlich, aber ich bin ungeduldig und möchte nicht auf meinen Computer warten ...) –

+0

Ich denke VS2008, zumindest, zeigte den Dialog, aber es war schneller zu verschwinden. Vielleicht macht 2010 mehr Arbeit im Voraus, um sicherzustellen, dass Sie mehr zur Verfügung haben, wenn Sie in den Editor gehen. – Lazarus

3

Löschen Sie die Datei solutionname.sln.docstates.suo. Wenn Visual Studio nicht mehr reagiert, öffnen Sie die Dokumente, die Sie beim letzten Schließen der Lösung geöffnet hatten.

Verwandte Themen