我的C#控制台项目下有文件夹"〜/ Assets / Samle.xlsx"。我想在本地机器上访问这个excel文件&在Azure WebJob上。 Plz帮助
答案 0 :(得分:0)
对于您的本地方,如果文件位于~/Assets/Samle.xlsx
下,请确保已将复制到输出目录设置为始终复制作为{{1}然后您可以使用以下代码获取文件路径:
Samle.xlsx
当发布为Azure WebJob时,它会在您的Web应用程序的string filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Assets\Samle.xlsx");
下,您可以使用kudu进行检查。您的webjob将被复制到临时目录(例如D:\home\site\wwwroot\app_data\jobs\{job type}\{job name}
)默认情况下运行,此时你的excel文件将在temp文件夹下。有关详细信息,请参阅WebJob Working Directory。
默认情况下,您正在读取temp文件夹下的excel文件。如果要直接从WebJob二进制文件目录中读取excel文件,可以更改WebJob Working Directory,也可以使用指向%TEMP%\jobs\{job type}\{job name}\{random name}
的{{1}}环境变量,然后将其与你的路径如下:
WEBROOT_PATH
此外,要阅读excel文件,您可以使用NPOI,SpreadsheetLight,Aspose.Cells for .NET等。此外,您可以将资源存储到Azure Blob storage作为中央存储,您可以参考here开始使用Azure Blob存储。