Antworten:
Warum sollte es eine nicht benutzerspezifische Präferenz sein?
Wenn ich eine Lösung mit 10 Dateien habe und ein Entwickler hauptsächlich eines dieser Tools testet / verwendet, warum sollte sich das auf das auswirken, was ich starte?
Ich denke, MS hat in diesem Fall die richtige Wahl getroffen. Das Projekt, das ich starten möchte, ist bei weitem nicht unbedingt das Projekt, das andere Entwickler starten möchten.
Es ist absolut notwendig, dass jeder sein StartUp-Projekt selbst definieren kann, wie Jon bereits gesagt hat . Aber einen dedizierten Standard zu haben, wäre großartig, und wie ich sehen kann, ist es möglich!
Wenn sich in Ihrem Lösungsverzeichnis keine .suo-Datei befindet, wählt Visual Studio das erste Projekt in Ihrer .sln-Datei als Standardstartprojekt aus.
Schließen Sie Ihr Visual Studio und öffnen Sie die SLN-Datei in Ihrem bevorzugten Texteditor. Ab Zeile 4, sehen Sie alle Ihre Projekte eingekapselt in Project- EndProjectLinien.
Schneiden Sie das gewünschte Standardstartprojekt aus und fügen Sie es an der obersten Position ein.
Löschen Sie Ihre .suo-Datei.
Öffnen Sie Ihre Lösung in Visual Studio. Ta daa!
Gibt es eine besondere Auszeichnung, wenn Sie etwas wissen, das Jon nicht weiß? ;-);
In den meisten Fällen ist es tut Sinn machen , auf diese eine Standard zu haben.
Es wäre viel besser, ein Standard-Startprojekt aufzunehmen und dieses in der SLN-Datei zu speichern, die jedoch von einem Entwickler in der SUO-Datei überschrieben werden kann. Wenn die Starteinstellung nicht in der .suo-Datei gefunden wird, wird das Standardstartprojekt in der .sln-Datei verwendet.
Tatsächlich wurde dies in UserVoice von Visual Studio vorgeschlagen .
Ich habe ein kleines Befehlszeilenprogramm für Windows geschrieben slnStartupProject, mit dem das Startprojekt automatisch festgelegt werden soll:
slnStartupProject slnFilename projectName
Ich persönlich verwende es, um das Startprojekt nach dem Generieren der Lösung mit cmake festzulegen , das immer ein Dummy- ALL_BUILDProjekt als erstes Projekt in der Lösung festlegt .
Die Quelle ist auf GitHub. Gabeln und Feedback sind willkommen.
Wenn Sie GIT verwenden, können Sie die Standard-SUO-Datei festschreiben und sie dann mit unverändert als unverändert markieren
git update-index --assume-unchanged YourSolution.suo
Dies funktioniert auch, wenn Sie mehr als ein Projekt in Ihrer Standardstartgruppe haben möchten. Der einzige mir bekannte Nachteil ist, dass dieser Befehl von allen ausgeführt werden muss, die die SUO-Datei nicht festschreiben möchten.