我正在將文件上傳到api,並且我必須將我的requestStream複製到FileStream以便將文件發佈到API。我的代碼如下所示,但我必須將文件保存到臨時文件夾以創建FileStream,然後我必須在操作後再次清理臨時文件夾。有沒有一個更清潔的方式 - 例如在內存中創建FileStream(如果可能的話)而不是將其保存到磁盤?在內存中創建FileStream而不是在磁盤上保存物理文件
Stream requestStream = await Request.Content.ReadAsStreamAsync();
//Create filestream by making a temporary physical file
using (FileStream fileStream = System.IO.File.Create(@"C:\tempFolder\" fileName))
{
await requestStream.CopyToAsync(fileStream);
var postedFile = ms.CreateMedia(fileName, folder.Id, "file");
postedFile.SetValue("umbracoFile", fileName, fileStream);
ms.Save(postedFile);
}
// Clean up
if ((System.IO.File.Exists(@"C:\tempFolder\" + fileName)))
{
System.IO.File.Delete(@"C:\tempFolder\" + fileName);
}
您正在尋找['MemoryStream'(https://msdn.microsoft.com/en-us/library/system.io.memorystream)。 –
Frederico,我一直用MemoryStream的方法困惑,我無法使它工作,所以我最終做了這個 – micknt