ASP.NET Core提供了一种将请求体写入Windows TEMP文件夹的解决方法。下面是一个包含代码示例的解决方案:
public void ConfigureServices(IServiceCollection services)
{
// 配置上传文件的临时存储位置为Windows TEMP文件夹
services.Configure(options =>
{
options.TempDirectory = Path.GetTempPath();
});
// 其他配置代码...
}
[HttpPost]
public async Task Upload(IFormFile file)
{
if (file != null && file.Length > 0)
{
// 使用流将文件保存到Windows TEMP文件夹
var filePath = Path.Combine(Path.GetTempPath(), file.FileName);
using (var stream = new FileStream(filePath, FileMode.Create))
{
await file.CopyToAsync(stream);
}
// 其他处理上传文件的代码...
return Ok();
}
return BadRequest();
}
在上面的示例中,配置了FormOptions的TempDirectory属性为Windows TEMP文件夹的路径,然后在控制器的Upload方法中使用流将请求体中的文件保存到Windows TEMP文件夹中。
请注意,这只是一种将请求体写入Windows TEMP文件夹的解决方法,您可以根据实际需求进行修改和调整。