Eine Aufgabe eines jeden Programmierers ist das fortwährende Backup der aktuellen, soweit funktionierenden Lösung (jeder Gamer weiss: Save Early, Save Often).
Das muss unkompliziert und schnell, am liebsten aus der Entwicklungsumgebung heraus, möglich sein.
Es existieren natürlich vielfälzige, hochprofessionelle Lösungen, zumeist in Verbindung mit ausgefeilten Versionskontrollsystemen (z.B. Github). Deren Einrichtung und Verwendung ist jedoch nicht immer unkompliziert und/oder kostenfrei. Häufig wird auch eine Onlineverbindung benötigt. Diese Überlegungen waren für mich der Anlaß, SolutionBackup zu entwickeln.
Meine Anforderungen:
- aus der Entwicklungsumgebung VS heraus einfachst zu bedienen
- lokales speichern (ja, ich bin paranoid)
- Standardformat der Dateien
@ErfinderDesRades hat schon 2011 ein Backup/Cloning-Tool vorgestellt: SolutionExplorer, das bis auf die Integration ins Visual Studio all' diese Anforderungen erfüllt. Wegen der Einfachheit der Bedienung verwende ich das Tool seit etlichen Jahren.
Was also fehlte, war die Integration ins VS2015. Ich hatte früher bereits mit der Entwicklung von VisualStudio-Erweiterungen experimentiert, bin auch zu anfänglichen Erfolgen gelangt. Dann wurde das ganze Thema aber so komplex, das ich es aus Zeitgründen zunächst zurückgestellt habe.
Vor wenigen Tagen dann wurde ich auf einen Artikel auf Codeproject aufmerksam: Visual Studio Extensibility (Day 1): Creating your first Visual Studio VSIX package.
Das war genau das was ich gesucht hatte: Eine wunderschönes HowTo mit Step-by-Step Anleitung zur Erstellung einer .vsix Erweiterung. Mit den dort aufgeführten Links war dann die Lernkurve ziemlich steil, sodass das Gerüst der Erweiterung nach kurzer Zeit erstellt war.
Was nun blieb, war die Integration des Codes aus dem SolutionExplorer von @ErfinderDesRades
Die dortige, eigentliche Backup-Lösung verbirgt sich in, wie ich finde, innovativen Codeteilen unter Verwendung eines DataSets zur Zwischenspeicherung der aufbereiteten Backupdaten.
Verwendung fand auch hier wieder die Helpers.dll. Ich wollte jedoch im .vsix keine zweite DLL mitliefern, daher habe ich aus der Helpers.dll die Funktionalität herausgezogen, die für SolutionBackup benötigt wird.
Den Code hier im Einzelnen darzustellen, sprengt bei Weitem den verfügbaren Platz. Ich füge das Projekt als SolutionBackup00.zip-Datei bei, die im Übrigen mit SolutionBackup erstellt wurde.
Weiterhin füge ich die SolutionBackup.vsix bei, die sofort ausgeführt werden kann.
Danach sind in der Oberfläche des Visual Studio zwei neue Einträge vorhanden:
Einmal im Menü: Extras. Dort sollte als erster Eintrag oben SolutionBackup vorhanden sein.
Dann ein dynamischer Eintrag: Wenn im Projektmappenexplorer der Projektmappenname markiert ist, erschein im Toolbar des Projektmappen-Explorers das Icon von SolutionBackup.
Viel Vergnügen damit, ich freue mich auf Rückäusserungen.
Edit://
Ich sehe gerade, das die Uploadfunktion des Forums die Dateiendung .vsix nicht als gültig erkennt. Bitte Daher nach dem Doenload die Datei SolutionBackupvsix.jpg in SolutionBackup.vsix umbenennen.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „us4711“ ()