Wie erhalte ich Visual Studio zum Generieren von Code mit Systemtypen (Int32) anstelle von integrierten Aliasen (int)

8

Kann ich Visual Studio dazu bringen, die integrierten Aliase in die Systemtypen umzuwandeln? Zum Beispiel, wenn ich die folgende Schnittstelle definiere

%Vor%

und verwende VS, um die Schnittstelle automatisch zu generieren, bekomme ich die eingebauten Typen.

%Vor%

Ich möchte, dass diese automatisch zu den Systemtypen

wechseln %Vor%

Ich bin nicht auf der Suche nach einer vollständigen installierbaren Lösung, nur ein Ausgangspunkt. Kann ich ein Skript in VS schreiben, das an Textabschluss oder On-Save angehängt ist? Soll ich ein Add-on schreiben, das über einen Kontextmenüeintrag für Projekte verfügt - 'Aliase in Systemtypen konvertieren'?

Hinweis: Ich bevorzuge die Systemtypen, weil sie wie andere Typen von VS formatiert sind. Eingebaute Aliase werden wie Schlüsselwörter formatiert. Außerdem ist es eine Kodierungsstil-Richtlinie für meinen aktuellen Job.

Update: Es ist aus MS klar, dass die vorhandene VS-Code-Generierung immer die eingebauten Aliase erzeugt.

    
Anthony Mastrean 19.01.2009, 14:18
quelle

2 Antworten

1

Die integrierten Aliase sind wie Schlüsselwörter formatiert, da die Schlüsselwörter sind. Der Compiler führt die Übersetzung von Schlüsselwörtern des Datentyps Sprache in den zugrunde liegenden CLR-Typ für Sie durch.

Es gibt nichts in Visual Studio, das diese Übersetzung automatisch für Sie übernimmt, daher müssen Sie ein eigenes Dienstprogramm schreiben, das dies tut. Es gibt mehrere Möglichkeiten, dies zu tun - Sie können ein Makro oder ein VS-Plugin schreiben - aber (IMHO) wird keiner von ihnen einfach zu schreiben sein und die Korrektheit sicherstellen.

Sie geben an, dass dies sowohl persönliche Präferenz- als auch Codierungsstilanforderungen sind. Ich denke, die Formatierungsprobleme scheinen fehl am Platz. Es ist im Allgemeinen einfacher / sauberer / bevorzugt, die Sprachaliasnamen anstelle der CLR-Typen zu verwenden. Abgesehen von der Syntaxfarbe im Texteditor gibt es absolut keinen Unterschied zwischen den beiden und wirklich keinen Grund, die CLR-Namen für Ihre Typen zu verwenden. Was sind die Gründe (falls vorhanden) in den Codierungsstil Anforderungen für die Verwendung der CLR-Typen anstelle der Sprache Aliase gegeben?

    
Scott Dorman 04.09.2009, 13:45
quelle
1

Die beiden Typen bedeuten genau dasselbe, es besteht keine Gefahr, dass man etwas anderes meint.

Der einzige Unterschied ist, wie sie aussehen. Wenn Ihnen das wichtig ist, können Sie ein Makro schreiben, das alle eingebauten Aliase durch Systemtypen ersetzt.

    
Binary Worrier 19.01.2009 14:25
quelle