Comment créer de la Solution Visual Studio (.sln) les fichiers de la programmation, y compris les projets de Site web?
Je suis en train de travailler sur un générateur de code projet qui crée de la solution avec des couches.
pour l'instant, je suis en mesure de créer la .la sln fichier par écrit tous les éléments dans le code. mais les fichiers de projet n'ont pas besoin de cela, ils peuvent être modifiés à l'aide de MSBuild Projet de classe.
Je veux ajouter un projet de Site web modèle de soutien et de etc, de sorte que de cette façon-je modifier la .la sln fichier n'est pas cool, je voulais savoir qu'est-il une meilleure façon de faire cela, comme MSBuild ou autre chose ?
J'ai vu Générer par programmation de solutions de Visual Studio qui dit d'utiliser Visual Studio SDK (qui est pour l'extension de visual studio, l'écriture de plugins ...), mais il n'y a pas de code de l'échantillon.
merci d'avance
J'ai demandé quelque chose de semblable auparavant: stackoverflow.com/questions/8064675/. Apparemment, vous pouvez le faire en utilisant EnvDTE, cependant, j'ai eu du mal à obtenir que le travail
Peut-être que vous pouvez utiliser quelque chose comme Premake pour générer les fichiers de projet? industriousone.com/premake
le générateur de code doit avoir le soutien de projets de site web! merci Ron, je vais jeter un oeil à EnvDTE, c'est peut-être ce dont j'ai besoin.
Il ressemble à EnvDTE ne prend pas en charge WSP trop. Premake est en C, je suis à l'aide de C#.
OriginalL'auteur Ashkan | 2012-01-05
Vous devez vous connecter pour publier un commentaire.
Ici est de savoir comment utiliser SLNTools pour créer de la sln fichier dans le code. Le code est un gâchis! Mais ça fonctionne!
SLN Outils de projet est capable de créer de la sln fichier à partir de fichiers de projet. Il est open source et il fournit une INTERFACE utilisateur pour l'édition et de la fusion de la sln fichiers. Dans ce cas, vous pouvez utiliser la base du projet et par la référence à la "CWDev.SLNTools.Core.dll" dans votre projet, vous pouvez écrire un malpropre(!) code comme ceci:
NOTE: Certaines parties de la classe ne sont pas indiqués ici et Il y a également quelques objets de mon propre projet comme la Sln, Projet et ... qui ne doit pas être confondu avec SLNTools Objets avec le même nom. Je lui ai dit où que nécessaire!
Espère que cela aide.
OriginalL'auteur Ashkan
Vous pouvez utiliser le IVsSolution interface pour créer des solutions et ajoutez-y des projets. Vous pouvez passer le SVsSolution type de la La méthode GetService() méthode pour obtenir une instance de l'interface comme suit:
OriginalL'auteur Charles Lambert
Dans mes fichiers de solution, les projets de site web sont stockés dans le WebsiteProperties section de projet.
Ces propriétés sont passées dans le aspnet_compiler comme paramètres d'entrée en fonction de la configuration de build. Essayez de rechercher pour projectID (GUID) (C9683FA5-AABA-497F-B780-80EFC3EB81F2 dans ce cas) à l'intérieur de votre sln fichiers contenant du projet de site web, quelles sont les parties de la sln fichier doit être mis à jour/généré par votre générateur de code.
Vous devez mettre à jour (au moins) ProjectConfigurationPlatforms & NestedProjects mondiale sections. Ce qui était nécessaire dans mon cas.
J'ai mis en œuvre fusion de la solution de tâche MsBuild. Il prend en charge la fusion de plusieurs fichiers en un seul MergedSolution.la sln fichier. Il fonctionne sur nos 20+ fichiers de solution contenant plus de 500 projets c# & site web & sql db fichiers de projet/sections). La sortie de la solution de la taille du fichier est de 1,3 MO 🙂
EDIT:
La SLN projet d'Outils est capable de créer de la sln fichier à partir de fichiers de projet.
Comment générer de la SLN fichier personnalisé tâche MSBuild:
par personnalisé tâche MSBuild (à l'intérieur de méthode Execute)
Je suis à l'aide personnalisée tâche MSBuild, mais je ne peux pas publier le code source des règles de l'entreprise, désolé 🙁
Ouais, bien sûr, pouvez-vous donner un indice sur la façon de créer .la sln fichier avec la tâche msbuild? Je pense que c'est la meilleure façon de créer de la sln fichiers, comme je le fais pour le projet (.??proj) des fichiers. Si cela fonctionne, je vais donner la réponse.
J'ai mis à jour ma réponse 😉
La SLN projet d'Outils est ce dont j'avais besoin, merci beaucoup! Je vais probablement ajouter quelques fonctionnalités à soutenir plus de projets différents et des références et ...
OriginalL'auteur Ludwo