2013-12-19 61 views
0

我有一個需求,我必須使用WEB API上傳文件。爲Post創建了一個api控制器,並處理了多部分表單數據,並且我可以成功上傳這些文件。但我需要傳遞一個複雜的類型,如FileName,Description,FormId等等,以及文件。那麼如何使用單個Post Controller來實現這一點。例如)如何在ASP.NET WebAPI中將文件與一些複雜類型一起上傳

public HttpResponseMessage Post([FromBody] MyComplexType myType) 
{ 
    //Here I get the files from Request.Content.ReadAsAsyncStream(); 
    // myType is always null. 
} 

也從客戶端(JavaScript和.NET客戶端)我可以發佈Mutlipart Formdata或複雜類型。但我需要在相同的請求中執行這兩個操作。

請幫助....

+0

你有這個問題的答案嗎? – Marin

回答

0

有你看着使用MultipartFormDataProvider在請求是具有「formurlencoded」數據multipart請求+文件?......但如果你的要求是像「JSON」數據+文件,那麼你可以使用MultipartMemoryStreamProvider ...如果文件很大並且內存使用是一個問題,你可以創建一個自定義的MultipartStreamProvider ...

相關問題