C# 将Request.Content转换为FileStream C

C# 将Request.Content转换为FileStream C,c#,file-upload,asp.net-web-api,filestream,C#,File Upload,Asp.net Web Api,Filestream,我正在尝试使用Web Api从用户处接收文件,然后将文件转换为文件流,而不将文件写入服务器。文件必须保留在内存中 我有代码可以将其写入服务器,但在不将文件写入服务器的情况下将其放入文件流的所有尝试都失败了 public class ReceiverController : ApiController { public Task<HttpResponseMessage> Upload() { HttpRequestMessage request = t

我正在尝试使用Web Api从用户处接收文件,然后将文件转换为文件流,而不将文件写入服务器。文件必须保留在内存中

我有代码可以将其写入服务器,但在不将文件写入服务器的情况下将其放入文件流的所有尝试都失败了

public class ReceiverController : ApiController
{

    public Task<HttpResponseMessage> Upload()
    {
        HttpRequestMessage request = this.Request;

        if (!request.Content.IsMimeMultipartContent())
        {
            throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.UnsupportedMediaType));
        }

        string root = HttpContext.Current.Server.MapPath("~/App_Data/");
        var provider = new MultipartFormDataStreamProvider(root);

        var task = request.Content.ReadAsMultipartAsync(provider).
            ContinueWith<HttpResponseMessage>(o =>
        {
            FileInfo fileInfo = new FileInfo(provider.FileData.First().LocalFileName);
            string fileName = provider.FileData.First().Headers.ContentDisposition.FileName.Replace("\"", "");
            if (!File.Exists(Path.Combine(root, fileName)))
            {

                File.Move(fileInfo.FullName, Path.Combine(root, fileName));
            }

            return new HttpResponseMessage()
            {
                Content = new StringContent("File uploaded.")
            };
        });
        return task;
    }
}

fileName.PostedFile.InputStream-为我提供流,我使用以下代码将其转换为字节数组。然后根据以下代码将字节数组转换为filestream

BinaryReader br = new BinaryReader(fileName);
      bytary= br.ReadBytes((Int32)fileName.Length);
            for(int i = 0; i < bytary.Length; i++)
                  {
                         fileStream.WriteByte(bytary[i]);
                                }