【问题标题】:.NET Change Temp Path.NET 更改临时路径
【发布时间】:2010-12-19 22:09:50
【问题描述】:

这两种方法如何设置临时路径?

System.IO.Path.GetTempFileName()
System.IO.Path.GetTempPath()

我的公司应用程序是为带有 .NET 4.0 的 Windows 2008 设计的。但是,该应用程序将同时支持 Windows 2008 和 Azure。

由于 Azure 不允许本地文件写入,因此无法在 Azure 中创建临时文件。在应用程序中,有很多地方使用临时文件进行大量工作(这意味着我们无法将数据放入内存中,因为临时文件很大。)

我的计划是创建一个TempFileWrapper 来替换原来的临时文件生成。但是,如果有简单的方法可以更改 System.IO.Path.GetTempFileName()System.IO.Path.GetTempPath 的返回值,那可以节省我的工作。

【问题讨论】:

    标签: .net azure file temp


    【解决方案1】:

    从这个blog post 公然复制,谷歌第三次点击:

    var tempPath = RoleEnvironment.GetLocalResource("Temp").RootPath;
    Environment.SetEnvironmentVariable("TEMP", tempPath);
    Environment.SetEnvironmentVariable("TMP", tempPath);
    

    【讨论】:

      【解决方案2】:

      MSDN documentation 描述了GetTempPath 如何找到路径:

      1. TMP 环境变量指定的路径。
      2. TEMP 环境变量指定的路径。
      3. USERPROFILE 环境变量指定的路径。
      4. Windows 目录。

      因此,只需更改 TMPTEMP 环境变量即可。

      【讨论】:

      • 我们可以在 Azure 中更改这些变量吗?
      • 是的,你可以。不过,看起来 Hans Passant 打败了我。
      猜你喜欢
      • 2015-02-16
      • 1970-01-01
      • 1970-01-01
      • 2019-08-12
      • 2012-04-11
      • 2023-01-30
      • 1970-01-01
      • 2020-05-20
      • 1970-01-01
      相关资源
      最近更新 更多