使用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