我需要實現翻頁:文件上傳和處理過程中的ASP MVC
用戶點擊按鈕上傳文件,選擇文件並上傳的服務器。上傳後文件將由轉換器處理。轉換器可以返回轉換的百分比。如何在頁面上實現持續進度條(progress =上傳進度+轉換進度)?
我正在使用PlUpload--這個工具可以返回上傳文件到服務器的百分比,但是我無法覆蓋返回的百分比。
那我的上傳動作:
public ActionResult ConferenceAttachment(int? chunk, string name, Identity cid)
{
var fileUpload = Request.Files[0];
var tempfolder = Path.GetTempFileName().Replace('.', '-');
Directory.CreateDirectory(tempfolder);
var fn = Path.Combine(tempfolder, name);
chunk = chunk ?? 0;
using (var fs = new FileStream(fn, chunk == 0 ? FileMode.Create : FileMode.Append))
{
var buffer = new byte[fileUpload.InputStream.Length];
fileUpload.InputStream.Read(buffer, 0, buffer.Length);
fs.Write(buffer, 0, buffer.Length);
}
// CONVERTING ....
return Content("OK", "text/plain");
}
哪個架構解決方案可以解決我的問題?或者哪個JS上傳庫?
你真的使用plupload的chunking功能嗎? (是一個30MB的文件,上傳60kb的500kb?)如果是這樣,轉換何時發生?在收到每個塊?如果是這樣,你的代碼似乎很好,只是返回一個像這樣的json結果{「jsonrpc」:「2.0」,「result」:null} – jbl
我需要從上傳和轉換進度組成單個進度欄。起初所有文件上傳,然後轉換。 –
你真的需要整個文件來開始你的轉換嗎? – jbl