MultipartMemoryStreamProvider:filename?

时间:2013-01-23 08:26:40

标签: c# asp.net-web-api

我已经在这里问过如何在不需要保存的情况下在Web Api中读取上传的文件。 使用MultipartMemoryStreamProvider回答了这个问题,但是如何使用此方法获取文件名以从中派生上传文件的类型?

亲切的问候

1 个答案:

答案 0 :(得分:29)

此DotNetNuke代码here中有一个示例(请参阅PostFile()方法)。

根据@FilipW评论更新 ...

获取所需的内容项,然后访问文件名属性。

这样的事情:

        var provider = new MultipartMemoryStreamProvider();
        var task = request.Content.ReadAsMultipartAsync(provider).
             ContinueWith(o =>
                 {
                     //Select the appropriate content item this assumes only 1 part
                     var fileContent = provider.Contents.SingleOrDefault();

                     if (fileContent != null)
                     {
                         var fileName = fileContent.Headers.ContentDisposition.FileName.Replace("\"", string.Empty);
                     }
                 });//Ending Bracket