Studioでロボットトレイにpublishを行ったのですが、何度やっても決まったフォルダだけ解凍フォルダ内から消えてしまいます。
元となるデータが入っているフォルダです。
なぜでしょうか。
* ワークフロープロジェクト(Studioでの開発の際に使用するフォルダ)の中に、インプットデータを保存するフォルダを作成してある
* 上記プロジェクトをパブリッシュした後、生成された.nupkgファイルを解凍してみると、インプットデータを保存するフォルダが削除されている
この状態です。
Studioでロボットトレイにpublishを行ったのですが、何度やっても決まったフォルダだけ解凍フォルダ内から消えてしまいます。
元となるデータが入っているフォルダです。
なぜでしょうか。
* ワークフロープロジェクト(Studioでの開発の際に使用するフォルダ)の中に、インプットデータを保存するフォルダを作成してある
* 上記プロジェクトをパブリッシュした後、生成された.nupkgファイルを解凍してみると、インプットデータを保存するフォルダが削除されている
この状態です。
「決まったフォルダ」「解凍フォルダ」「元となるデータが入っているフォルダ」のそれぞれがどの位置を指しているかが分からず回答できかねますので、もう少し情報を補足いただけませんでしょうか。
決まったフォルダ→消えるフォルダのことです。必ず決まって同じフォルダがなくなります。
解凍フォルダ→publishしてできる.nugetファイルを解凍したフォルダのことです。xamlやjsonが入っているものです。
元となるデータ→入力ファイルです
以上、よろしくお願い致します。
下記のように理解していますが相違ありませんでしょうか。
もし上記のとおりでしたら、インプットデータを保存するフォルダはワークフロープロジェクトの外のフォルダを指定することを推奨します。
そうでない場合は、次の情報を追加で提示いただけませんでしょうか。
はい、仰る通りです。
本来、プロジェクトの外のファイルを指定するのが正しい方法なのでしょうか。
たしかに、実行者のことを考えるとワークフロープロジェクト内に入ることはリスクもあるので外の方が良かったのかもしれません。
知見が足りず、ご教示ください。
ご回答ありがとうございます。やっとイメージが掴めました。
プロジェクト内にフォルダを配置してファイルを指定することが誤りというわけではありませんが、推奨されないと思います。
プロジェクト内のフォルダはユーザープロファイルのフォルダの中に展開されます。その階層は深いですし、かつパブリッシュ時のバージョンごとにフォルダが生成されます。そのような仕組みですので、インプットデータを保存するフォルダがアクセスしにくいと考えます。
プロジェクト外のフォルダを指定する方法は、特別難しいものではありません。
例えばExcelファイルを読み込むとして、Excel Application Scopeを利用しているのであれば、ファイルパスに絶対パス(C:\~\~~\~~~.xlsx
)を指定します。
プロジェクト外を見に行くようにフローは変更いたしました。
ただ、なぜ毎回同じフォルダが消えてしまうのかという点については解明されないままです。