MultipartMemoryStreamProvider:filename?

Sha*_*iZy 18 c# asp.net-web-api

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

亲切的问候

Mar*_*nes 29

有一个在这个DotNetNuke的代码的例子这里(见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
Run Code Online (Sandbox Code Playgroud)

  • 只检查headers.ContentDisposition.FileName.Replace("\"",string.Empty); - 没有"postfile"标题:) (4认同)