使用Dropnet(Dropbox API)。我可以上傳一個這樣的文件:使用DropBox API時的進度條
DropNet.DropNetClient dc = new DropNet.DropNetClient("*************", "g86p9959v9tvg49");
dc.Login("[email protected]", "********");
byte[] rawData = File.ReadAllBytes("Ionic.Zip.dll");
dc.UploadFile("Public", "Ionic.Zip.dll",rawData);
Console.WriteLine(dc.Account_Info().quota_info.quota/(1024*1024));
有沒有辦法讓這個進度條? It says here:
它的東西,你可以自己制定出 - 你知道文件 是多麼大,你知道你有多少送 或迄今收到,其餘爲基本 數學。 :)
如何確定已發送多少數據?請幫忙嗎?
感謝
編輯: 上傳方法返回 - DropNet.Models.DropNetResult.statuscode一個System.net.httpstatuscode對象。是這個嗎 ?我必須以某種方式使用這個東西來建立一個進度條嗎?
您必須從'dc.UploadFile'或從服務器獲得反饋。這聽起來像是他們打算讓你在客戶端做到這一點;你需要深入'UploadFile'來查看是否有任何範圍來添加進度回調,或者更新其他線程可以(仔細地)讀取的共享變量或其他內容。 (順便說一下:是否沒有上傳流或從文件名API直接上傳?如果你有很多GB文件,讀取字節然後上傳將開始掙扎。) – Rup 2011-03-07 12:34:14
謝謝,我仍然在探索api,看看是否有一個更好的方法 – 2011-03-07 12:42:21
您的編輯:不,這太晚了 - 上傳將完成。您需要獲取實際的UploadFile操作,以便在進度信息返回時返回進度信息。如果它尚不支持這個,那麼你可能需要深入到實現本身,找到實際執行上傳的代碼並修改它以隨着它的發展返回進度。如果它是從一個字節數組上傳的,那麼你可能會鉤住它(例如,如果它是一個單獨的寫入,那麼將它切換到部分寫入的循環並在每個寫入之間回叫)。 – Rup 2011-03-07 12:47:47