Bonjour,
Je veux créer un template de projet qui affiche un Wizard permettant d'entrer une liste de noms de pages ASPX à créer (et à ajouter au projet lors de sa création) à partir d'une page modèle, cette page modèle existe dans le fichier zip du template.
Les pages sont crées à partir de cette page modèle grâce au code suivant :
Un code similaire permettra de créer le fichier (.vb) et le fichier (.designer.vb)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Public Sub ProjectFinishedGenerating(ByVal project As EnvDTE.Project) Implements Microsoft.VisualStudio.TemplateWizard.IWizard.ProjectFinishedGenerating project.ProjectItems.AddFolder("pages") project.ProjectItems.Item("pages").ProjectItems.AddFromFileCopy(project.ProjectItems.Item("PageModele.aspx").Properties.Item("FullPath").Value.ToString)
Le problème c'est que pour chaue page crée dynamiquement, on doit remplacer le nom du fichier et le nom de la classe du code behind. Or, la techniaue de remplacement des parametres "habituelle" ($parametre$) dans ces cas là ne peux pas être utilisée, car elle effectue le remplacement au sein de la page modèle dans la méthode IWizard.RunStarted, or les fichiers sont crées par la suite dans la méthode ProjectFinishedGenerating, et donc aucun remlpacement ne sera effectué, et toutes les nouvelles pages auront le même nom de classe de code behind !
Je pense ouvrir les nouveaux fichier en mode texte pour faire le remplacement, avez-vous d'autres solutions ?
Partager