MultipartMemoryStreamProvider:filename?

问题描述 投票:17回答:1

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

亲切的问候

c# asp.net-web-api
1个回答
29
投票

这个DotNetNuke代码中有一个例子here(参见PostFile()方法)。

基于@FilipW评论更新...

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

像这样的东西:

        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
© www.soinside.com 2019 - 2024. All rights reserved.