Ich verwende VS 2015. Wenn ich eine neue Klasse erstellen und versuchen, eine Schnittstelle mit der Verknüpfung "Strg +" zu implementieren. Zum Beispiel Klasse StarShip: ISTarShip und dann verwende ich "Strg +". und wählen Sie die Werkzeugschnittstelle aus. Es implementiert die Eigenschaften und Methoden in alphabetischer Reihenfolge! Gibt es einen einfachen Weg, um sie in der Reihenfolge zu implementieren, in der sie in der Schnittstelle sind, oder sollte ich es manuell tun? Ich habe immer noch keinen Nachschärfer, also ist das keine Option.So implementieren Sie Schnittstelleneigenschaften NICHT in alphabetischer Reihenfolge
7
A
Antwort
1
Die VS-Schnittstelle "implementieren" verwendet offensichtlich Reflektion, um den Code zu generieren, und in den Reflection-APIs gibt es nichts, das die Reihenfolge der von den verschiedenen Aufrufen zurückgegebenen Elemente garantiert. Wir haben keine Kontrolle über die Reflexionsordnung oder den VS-Code-Generator, der zum Implementieren von Schnittstellen verwendet wird, so dass wir die Funktionsweise nicht ändern können.
Grundsätzlich ist die einzige Option, eine VS-Erweiterung wie Nachschärfer zu verwenden, die die Funktionalität der Werkzeugschnittstelle ersetzt.
Verwandte Themen
- 1. Schnittstelleneigenschaften in Schnittstellen implementieren?
- 2. Rearrange Arraylist in alphabetischer Reihenfolge
- 3. Ordnerstruktur in alphabetischer Reihenfolge zurückgeben
- 4. mysql alphabetischer reihenfolge
- 5. Sortieren Array in alphabetischer Reihenfolge in Python
- 6. So bestellen Sie die Abfrage nach Spalte nicht in alphabetischer Reihenfolge
- 7. Sortierung nach alphabetischer Reihenfolge immutable.js
- 8. Sorting Namen in alphabetischer Reihenfolge in C
- 9. nicht richtig Kann in alphabetischer Reihenfolge in Rails
- 10. Machen Sie die Auswahllistenausgabe in alphabetischer Reihenfolge in Rails?
- 11. laden Sie Kontaktliste in alphabetischer Reihenfolge in swift
- 12. CSV-Spalte teilen & sortieren In alphabetischer Reihenfolge
- 13. Ausgabe des Wörterbuchs in alphabetischer Reihenfolge zurückgeben
- 14. mysql Tabellenspaltennamen in alphabetischer Reihenfolge abrufen
- 15. Finde den längsten Teilstring in alphabetischer Reihenfolge
- 16. Javascript Mergesort - Wörter in alphabetischer Reihenfolge
- 17. Python - Wie man Sphinx-Ausgabe nicht in alphabetischer Reihenfolge sortiert
- 18. ListView in alphabetischer Reihenfolge ohne Vergleich
- 19. Sortieren eine Textdatei in alphabetischer Reihenfolge (Python)
- 20. Javascript: Finden Sie vorherige Buchstaben in alphabetischer Reihenfolge
- 21. Mitglieder zufällig und nicht in alphabetischer Reihenfolge anzeigen
- 22. MySQL Reihenfolge Gruppe von Datensätzen nach alphabetischer Reihenfolge
- 23. So erhalten Sie Kontakte in alphabetischer Reihenfolge mit dem $ cordovaContacts-Plugin von IONIC Framework
- 24. DocumentDB-Schnittstelleneigenschaften
- 25. DBus-Schnittstelleneigenschaften
- 26. eine Zeichenfolge in alphabetischer Reihenfolge nach Zeile in Clojure (Script)
- 27. DPLY: Um Spalten in alphabetischer Reihenfolge in R
- 28. mysql Spalten miteinander kombinieren und zu sortieren in alphabetischer Reihenfolge
- 29. Länder in alphabetischer Reihenfolge aufsteigend in allen Sprachen sortieren
- 30. So implementieren Sie IAsyncOperationWithProgress
Aber warum ist das Verhalten in VS2013 anders? –
Wenn Sie die Mitglieder einer Schnittstelle aufzählen (zum Beispiel typeof (IList) .GetMembers()), sind die Ergebnisse ziemlich ungeordnet. Ich kann mir vorstellen, dass jemand dachte, dass es die alphabetische Reihenfolge der Dinge verbessern würde, anstatt die zufällige Reihenfolge, die du zuvor bekommen hast. Das oder sie hatten Probleme mit dem Code, der zuvor die Bestellung ausgeführt hatte, und ließen ihn zugunsten von alphabetisch fallen. Ich habe keine Verbindung zu den Entwicklern, also kann ich nicht mit Sicherheit sagen. – Corey
Wenn Sie VS2013 verwenden, um die Schnittstelle zu implementieren (Code generieren), werden die Methoden in derselben Reihenfolge angeordnet, wie sie in der Schnittstelle definiert sind. OP-Frage scheint zu sein, warum das gleiche nicht in VS2015 passiert, und wie, wenn möglich, kann es wie in VS2013 zum Beispiel sein. –