C# 使用System.IO.Directory.CreateDirectory()时FileNotFoundException

C# 使用System.IO.Directory.CreateDirectory()时FileNotFoundException,c#,.net,azure,core,C#,.net,Azure,Core,我在Azure上运行.net应用程序时遇到问题。使用CreateDirectory方法时,它抛出FileNotFoundException,并显示消息“找不到文件'D:\home\site\wwwroot\CVs' 当在本地和私有服务器上运行时,该应用程序毫无例外地工作。知道有什么问题吗 Directory.CreateDirectory(Path.Combine(Directory.GetCurrentDirectory(), "CVs")); 假设您将应用程序作为Azure Web应用程序

我在Azure上运行.net应用程序时遇到问题。使用CreateDirectory方法时,它抛出FileNotFoundException,并显示消息“找不到文件'D:\home\site\wwwroot\CVs'

当在本地和私有服务器上运行时,该应用程序毫无例外地工作。知道有什么问题吗

Directory.CreateDirectory(Path.Combine(Directory.GetCurrentDirectory(), "CVs"));

假设您将应用程序作为Azure Web应用程序运行,那么您需要小心尝试写入文件系统的内容,因为Azure Web应用程序的虚拟机是如何处理的

由于Azure不保证每次都有相同VM的可用性,而只保证运行您的应用程序的VM的可用性,这意味着文件系统(您部署的应用程序文件之外)不保证持久存在。如果您的应用程序被扩展,那么我们将进入一个全新的问题,即多个VM之间的持久性

有关更多详细信息,请查看以下问题的答案:

请检查此问题->根据@cokceken,不应抛出
FileNotFoundException
这是Directory.CreateDirectory抛出“UnauthorizedAccess”异常的方式。持久性不会有问题,因为它只是为了保存文件一段时间,然后制作zip并下载。我很好奇,因为我刚刚更新了一个分支,而依赖于同一函数的其他版本不共享同一问题。如果您只想制作一个zip文件作为下载文件,请使用%temp%文件夹来存储它。