プロジェクトに追加したファイルのプロパティの「出力ディレクトリにコピー」とは
Visual Studioで以下のようにプロジェクト内にフォルダを作ってファイルを置くことができます。
この追加したファイルのプロパティを開いてみましょう。 プロパティの開くには、ソリューションエクスプローラー上でファイルを右クリックしてコンテキストメニューから「プロパティ」を選択します。
ファイルのプロパティが開きますが、ここに「出力ディレクトリにコピー(Copy to Output Directory)」という項目があって、デフォルトでは「コピーしない(Do not copy)」となっています。
これは何かというと、そのファイルをビルド時に所定のフォルダにコピーするかどうかを指定する項目です。
用途は様々かと思いますが、アプリケーション独自の設定ファイルを配置したり、テスト用のデータを配置したりといったことに使えるのかなと思います。
設定項目としては、
- コピーしない
- 常にコピーする
- 新しい場合はコピーする:プロジェクトのほうが更新された場合はコピーします。
の3つになります。
コピーする設定にした場合、このファイルはどこに配置されるのか、というと、この「アプリケーションの実行ファイルと同じフォルダ」になります。
確認してみます。
「新しい場合はコピーする」を選択し、ビルドします。
すると、MyConsoleApp/MyConsoleApp/bin/Debug/netcoreapp3.0
フォルダ内にプロジェクト内に追加したフォルダとファイルが作成されていることが確認できます。
これらのファイルへのアクセスについては以前の記事のとおり、相対パスなどを使えばよいです。