1. ホーム
  2. スクリプト・コラム
  3. パワーシェル

nugetパッケージのファイル消失問題を解決するためのpowershellスクリプトを追加しました。

2022-01-04 22:11:16

nugetのパッケージングでは、設定ファイルを追加する必要がある場合があります。設定ファイルとは、サイト公開時に出力ディレクトリに同時にコピーする必要があるテキストファイルで、そうしないとファイル損失の問題が発生するため、パッケージング時にpowershellスクリプトを追加することで解決します。

通常、powershell パッケージを追加すると、パッケージの形式は次のようになります。

追加->ツール->install.ps1スクリプト

param($installPath, $toolsPath, $package, $project)
$configItem = $project.ProjectItems.Item("log4.config")

# set 'Copy To Output Directory' to 'Copy if newer'
$copyToOutput = $configItem.Properties.Item("CopyToOutputDirectory")
$copyToOutput.Value = 1

# set 'Build Action' to 'Content'
$buildAction = $configItem.Properties.Item("BuildAction")
$buildAction.Value = 2


プロジェクトにnugetパッケージを追加し、出力ウィンドウを見ると、ps1スクリプトが自動的に実行され、log4.configファイルのプロパティに"always copy"を出力ディレクトリのプロパティに変更したことがわかります!

さて、nuget パッケージをビルドするときに初期化を行いたい場合は、このようにします!