4

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

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

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

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

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

4

2 回答 2

8

从这篇博文中公然复制,谷歌第三次点击:

var tempPath = RoleEnvironment.GetLocalResource("Temp").RootPath;
Environment.SetEnvironmentVariable("TEMP", tempPath);
Environment.SetEnvironmentVariable("TMP", tempPath);
于 2010-12-19T22:18:42.780 回答
5

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

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

所以只需更改TMPorTEMP环境变量。

于 2010-12-19T22:12:27.563 回答