14

我将 Web 作业附加到我的 Azure 网站。网络作业准备了一个文件,我想将它保存在网站的适当文件夹中。

Environment.CurrentDirectory在脚本上运行会返回 Temp 目录下的路径: Temp\jobs\triggered\WEBJOBNAME\q0uwrohv.x5e

我试图在目录树上往下走:

string path = Path.Combine(Environment.CurrentDirectory, @"..\..\..\..\..\Data")

但它不起作用:

C:\DWASFiles\Sites\WEBSITENAME\Temp\jobs\triggered\WEBJOBNAME\q0uwrohv.x5e\..\..\..\..\..\Data

如何从 WebJob 制作文件并将其保存到特定路径?

我不想使用 blob 存储。

4

2 回答 2

26

Azure 网站根目录的路径(通常)是d:\home\site\wwwrootd:\home也存储在名为%HOME%.

要更深入地了解您可以在您的站点上使用的不同路径,请访问: https://{sitename}.scm.azurewebsites.net,您将拥有调试控制台,您可以在其中浏览您的站点和环境以查看您可以使用的所有环境变量。

您的 WebJob 将可以访问与您的网站相同的路径/环境。

有关此管理站点的更多信息,请访问: http ://azure.microsoft.com/blog/2014/03/28/windows-azure-websites-online-tools-you-should-know-about-2/

于 2014-06-12T17:33:34.653 回答
1

尝试以下操作,而不是将文件位置放在 value 参数中,就像我在这里展示的那样

你可以在app.config文件中做

add key="app:TempFolderPath" value="~/temp/"/
add key="app:TempReportDirectory" value="~/temp/"/

网络作业会自动放到这个位置

D:\local\Temp\jobs\continuous\ImporterWebJob\yex3ad1c.3wo\~\temp\...your file...

我希望这不会给你任何错误。

于 2018-12-13T17:59:47.157 回答