Fondamentalement, je veux un de mes dossiers à apparaissent au-dessus des autres dossiers comme un type de « dossier spécial », semblable à comment les propriétés possèdent leur propre endroit spécial, même si elle est un dossier, même avec App_Data, etc.
Est-ce possible?
Oui:
- le faire manuellement par l'IDE
- Rédigez votre propre script pour générer/modifier votre
*.sln
/*.vcproj
Pour (1) "manuel" sur solutions dans l'ESI: Solution Explorer
, right-click
sur Solution node
==>Add
==>New Solution Folder
. En général, les dossiers sont triés par ordre alphabétique (j'insère un trait de soulignement pour forcer votre dossier spécial vers le haut), mais les dossiers de solution insérés manuellement sur mon MSVS2008 laissent le nouveau dossier "en haut", même s'il doit ont chuté quand trié par ordre alphabétique. Cependant, les dossiers sous Project
(qui sont appelés "Filters
") sont toujours triés par ordre alphabétique, et ajoutés de la même manière à partir du clic droit, puis vous pouvez modifier leurs "propriétés de filtre" avec les globs de nom de fichier pour ce que vous voulez. , ajoutez un glob de filtre pour "*.MY_EXTENSION1;*.MY_EXTENSION2
").
Nous avons choisi (2), et nous générons nos propres *.sln
et *.vcproj
, en ajoutant nos propres dossiers/filtres. Je n'ai vu aucun utilitaire sur le web pour vous aider (nous avons donc dû écrire le sien). Les formats ne sont pas trop difficiles à désosser, mais c'est en grande partie du XML non documenté, donc vous devez expérimenter. Il n'y a que quelques bons articles web expliquant ce qui est dans le fichier, comme celui-ci:
http://tim.oreilly.com/pub/a/dotnet/excerpt/vshacks_chap1/index.html?page=4
Sur le « bon côté », les fichiers ne sont que XML, donc dans le développement de nos scripts nous simplement apporté des changements par l'EDI, enregistré, et comparé les "diffs" pour ce que nous voulons changer. Ces changements sont ce que nos scripts insèrent lorsque nous modifions nos fichiers. Donc, si vous modifiez le fichier manuellement, vous pouvez de même simplement "diff
" le fichier pour voir ce qui a changé, et faire votre propre script. (À mon humble avis, c'est le chemin le plus rapide et le plus facile, car les outils n'existent généralement pas pour manipuler ces fichiers.)
Des outils tels que CMake
et QMake
génèrent *.vcproj
/*.sln
, mais ne pas vraiment faire la chose la personnalisation des dossiers comme vous parlez. Cependant, nous regardons aussi leur sortie, car «il y a plus d'une façon de faire les choses» dans ces fichiers, et les fichiers semblent avoir de nombreuses fonctionnalités non documentées pour faire des choses différentes que ces outils ont «découvert» peut essayer de copier leur sortie générée).
Nous avons trouvé que les API .NET fonctionnaient avec ces fichiers comme trop de travail, et pas vraiment conçus pour ce type de manipulation, mais YMMV.
Je crée généralement un dossier de solution. – AMissico
Vous voulez cela au niveau de la solution ou du projet? – Jon
Les dossiers de solution sont triés par ordre alphabétique. –