Visual Studio-Tastenkombination zum automatischen Hinzufügen der erforderlichen using-Anweisung

255

Was ist die Tastenkombination zum Erweitern der kleinen roten Linie, die Ihnen das Menü gibt, in dem Sie auswählen können, ob die erforderliche usingAnweisung oben in die Datei eingefügt werden soll?

Bramha Ghosh
quelle

Antworten:

407

Ctrl+ .zeigt das Menü. Ich finde das einfacher zu tippen als die Alternative, Alt+ Shift+ F10.

Dies kann über Tools> Optionen> Umgebung> Tastatur> Visual C #> View.QuickActions wieder an etwas Vertrauteres gebunden werden

Orion Adrian
quelle
6
Ja, ich denke, es ist das, was du gewohnt bist. Ich habe keine Schwierigkeiten mit Alt + Umschalt + F10, während Strg +. fühlt sich total fremd an. Ich denke, wir werden alles akzeptieren, wenn genügend Kondition vorhanden ist. : D
Jeff Yates
6
Ich habe eine der Microsoft-Tastaturen mit ihrer Funktionssperre ... Mann, ich hasse das Ding.
Orion Adrian
1
Ich habe eine davon zu Hause. Funktionssperre war eine blöde Idee.
Jeff Yates
3
Wow, wusste nichts über Strg +. oder Alt + Umschalt + F10, habe mich aber immer gefragt, ob es eine solche Abkürzung gibt. Ich habe auch eine Funktionstastatur, die sich aber immer an ihren Status erinnert, also hier kein Problem (Microsoft Natural Ergonomics Keyboard 4000).
OregonGhost
1
Strg + scheint mir bis zum Ende der Zeile zu helfen ... Ich bin mir nicht sicher, warum es anders ist.
justin.m.chase
37

Alt+ Shift+F10 zeigt das mit dem Smart Tag verknüpfte Menü an.

Jeff Yates
quelle
2
Ihr Cursor muss sich auf dem von Ihnen eingegebenen Klassen- / Schnittstellennamen befinden, damit dies funktioniert.
Pranav Mahajan
Ja. Und es muss auch der Mauszeiger sein, nicht nur der Tastaturcursor, und wenn Sie den Mauszeiger dorthin bewegen müssen, um darauf zuzugreifen, müssen Sie überhaupt keine Tastenkombination mehr verwenden.
Neutrino
@Neutrino Das ist bei mir sicher nicht der Fall. Der Mauszeiger hat nichts damit zu tun.
Jeff Yates
26

Ich kann das Visual Studio-Plugin ReSharper nur empfehlen. Es verfügt über eine QuickFix-Funktion, die dasselbe tut (und vieles mehr).

Für ReSharper muss sich der Cursor jedoch nicht auf dem tatsächlichen Code befinden, für den ein neuer Namespace erforderlich ist. Angenommen, Sie kopieren Code in die Quelldatei und fügen ihn mit nur wenigen Klicks Alt+ einEnter . Alle erforderlichen Verwendungen sind enthalten.

Oh, und es stellt auch sicher, dass die erforderliche Baugruppenreferenz zu Ihrem Projekt hinzugefügt wird. Angenommen, Sie erstellen ein neues Projekt mit NUnit- Komponententests. In der ersten Klasse, die Sie schreiben, fügen Sie das Attribut [TestFixture] hinzu. Wenn Ihre Lösung bereits ein Projekt enthält, das auf die NUnit-DLL-Datei verweist, kann ReSharper feststellen, dass das TestFixtureAttribute aus dieser DLL-Datei stammt, sodass diese Assemblyreferenz automatisch zu Ihrem neuen Projekt hinzugefügt wird.

Außerdem werden erforderliche Namespaces für Erweiterungsmethoden hinzugefügt. Zumindest die Beta-Version von ReSharper Version 5. Ich bin mir ziemlich sicher, dass die in Visual Studio integrierte Auflösungsfunktion dies nicht tut.

Auf der anderen Seite ist es ein kommerzielles Produkt, also müssen Sie dafür bezahlen. Wenn Sie jedoch kommerziell mit Software arbeiten, überwiegt die gesteigerte Produktivität (das Plug-In erledigt viele andere coole Dinge) den Preis.

Ja, ich bin ein Fan;)

Pete
quelle
14

In Visual Studio 2010 finden Sie den Tastaturbefehl zum Auflösen von Namespaces in einem Befehl namens View.ShowSmartTag . Meins wurde auch auf Shift+ Alt+ abgebildetF10 was sehr mühsam ist - daher ordne ich das normalerweise sofort neu zu.

Wenn Pete ReSharper kommentiert - ja, für jeden mit kleinem Budget macht ReSharper das Leben zu einem absoluten Vergnügen. Die Tatsache, dass es intelligent genug ist, um Abhängigkeiten außerhalb der aktuellen Referenzen aufzulösen und sie sowohl als Verwendungen als auch als Referenzen hinzuzufügen, spart Ihnen nicht nur unzählige Stunden, sondern lässt Sie auch vergessen, wo sich alle Framework-Klassen befinden ;-) So einfach ist das Entwicklungsleben ... Dann haben wir noch nicht einmal mit ReSharper-Refactorings begonnen.

DevExpress ' CodeRush bietet keine Unterstützung. oder nichts, was mir klar ist - und DevExpress im Nicht-Experten-Modus ist ziemlich offen für das, was es für Sie tun möchte :-)

Letzter Kommentar - Diese IDE-Funktion zum Auflösen von Abhängigkeiten ist in der Java-IDE-Welt so ausgereift und verfeinert, dass der Großteil der Internetbeispiele nicht einmal mehr die Importe (mit) anzeigt.

Microsoft hat diesbezüglich nun endlich etwas zu bieten, aber mir ist auch klar, dass sich der Kreis der Microsoft-Entwicklung (für viele von uns) jetzt geschlossen hat - der Fokus ging von der Quelle über visuelle Designer bis hin zum Fokus wieder auf Quelle - was bedeutet, dass die Zeit, die Sie in einer Quellcodeansicht verbringen / ob es sich um C #, VB oder XAML handelt, auf dem Vormarsch ist und das Ziehen und Ablegen auf 'Formulare' abnimmt. Mit dieser Grundannahme ist es einfach zu sagen, dass Microsoft sich darauf konzentrieren sollte, den Editor intelligenter zu gestalten, Tastaturkürzel zu vereinfachen und die Code- / Fehlerprüfung und -bewertung zu verbessern - die Tage eines dummen Editors, in denen Sie eine Klasse googeln müssen, um dies herauszufinden Welche Bibliothek es enthält, ist für die meisten von uns weg (oder sollte es auf jeden Fall sein).

Gawie Kellerman
quelle
Das habe ich gesucht! Wie heißt der Befehl, damit ich ihn neu zuordnen kann? Ein großes Lob dafür, dass er seinen Namen gefunden hat ... wirklich dunkel.
Schweinefeaster
6
  • Kontextmenütaste (eine mit dem Menü neben der rechten Windows-Taste)
  • Wählen Sie dann "Auflösen" aus dem Menü. Dies kann durch Drücken von "s" erfolgen.
James Curran
quelle
0

Es ist ctrl+ , .wenn zum Beispiel versuchen , Sie geben ListSie eingeben müssen <am Ende ein und drücken Sie ctrl+ .für sie zu arbeiten.

Slobodan Stanković
quelle