4

VS2012 で Web 配置ユーティリティを使用して MVC4 サイトを配置しようとしています。サーバーに直接接続できないため、'Web 配置パッケージ' 発行プロファイルを生成しています。これは、IIS > [パッケージのインポート] オプションを使用してアップロードおよび配置します。

これはすべて正常に機能していますが、例外があります。サーバー内の別のフォルダー (モバイルデータがアップロードされる場所) を指すサイト内の仮想ディレクトリが必要です。この仮想ディレクトリは問題なく作成できますが、新しいバージョンのパッケージを展開するたびに、仮想ディレクトリが削除され、忘れずに再度作成する必要があります。

私がやろうとしているのは、この仮想ディレクトリの作成プロセスを自動化することですが、その方法がわかりません。さらに進んで、新しい仮想ディレクトリNew-WebVirtualDirectoryを作成できる PowerShell コマンドレットを見つけました。

展開後にこのコマンドレットを実行するようにパッケージの作成をカスタマイズすることはできますか?

4

1 に答える 1

2

やりたいことは、新しい MSBuild タスク AfterTargets='MSDeployPublish' を追加することです。

これを行うには、csproj ファイルを編集し、powershell タスクで新しいターゲットを追加する必要があります。

次のようになります。

<Target Name="PostPublishTarget" AfterTargets="MSDeployPublish">
   <Exec Command="$PowershellCmdHere"/>
</Target>

MSBuild で powershell を実行する方法の詳細については、こちらをご覧ください

于 2013-03-27T16:53:58.673 に答える