Je sais que cette question mentionne Visual Studio 2010
, mais je suis ici à la recherche pour le même problème...
Je suis à l'aide d' Visual Studio 2012
et a trouvé un bon/moyen élégant pour surmonter cette situation ennuyeuse. Je pense qu'il va également travailler en VS 2010
et c'est mieux que l'ajout de mannequin fichiers vides à l'intérieur des dossiers vides.
Lorsque vous créez un profil de publication avec VS 2012
, il va générer un MyPublishProfile.pubxml
le fichier dans l' Properties\PublishProfiles
le dossier (My Project\PublishProfiles
pour VB). Ce sont des MSBuild
fichiers et on peut les modifier pour personnaliser le processus de publication. Dans notre cas, on peut injecter une cible dans le processus de publication, avant de le publier en fait se produit comme ceci:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<AfterAddIisSettingAndFileContentsToSourceManifest>CreateEmptyFolders
</AfterAddIisSettingAndFileContentsToSourceManifest>
</PropertyGroup>
<Target Name="CreateEmptyFolders">
<Message Text="Adding empty folder to hold Files" />
<MakeDir Directories="$(_MSDeployDirPath_FullPath)\Files\MyEmptyFolder"/>
</Target>
</Project>
La propriété AfterAddIisSettingAndFileContentsToSourceManifest
détient les noms de cibles qui sera appelé après que le contenu du package de déploiement a été préparé. C'est le moment idéal pour ajouter des fichiers ou des dossiers sur le paquet.
De Code et de texte mixte à partir de:
Comment exécuter un script PowerShell seulement avant un déploiement web, Publier des tâches de VS 2012?
Web Deploy : Personnalisation d'un package de déploiement