kztk-m/proenb-csharp-websrc

第4回:作業ディレクトリを.csproj等をいじって設定させるのではなく,Environment.CurrentDirectory を設定するようにする.

Closed this issue · 3 comments

.csprojを弄るのは少し大変なので,そうしないことで講義の本質的じゃない部分で消耗する労力を減らすようにする.

プロジェクト全体でなく,コードの中身と入力ファイルを提出してもらうようにすれば.csprojをいじる必要はないのではないか.そもそもの問題はVisual Studioの実行ボタンを押したときと.csprojがあるディレクトリでdotnet runをしたときの作業ディレクトリが異なることで相対パスの指すものが実行方式によって変わること(結果,入力ファイルを置くべき位置が変わること)であった.しかし,コードの中身と入力ファイルのみが提出されたのならばこっちで適当な場所に入力ファイルを置けるので.問題は生じないはず.

<PropertyGroup>
  <RunWorkingDirectory>$(MSBuildProjectDirectory)</RunWorkingDirectory>
</PropertyGroup>

を書くのが正式なやり方っぽい?

提出方法を変更することで本質的な問題でならないと信じてとりいそぎクローズ