簡體   English   中英

使用dropnet上傳大文件

[英]Upload large file using dropnet

我正在使用dropnet將文件上傳到Dropbox。 在此之前,一切工作正常,但僅適用於其中的小文件。 我正在使用以下代碼發送:

private void btnEnviar_Click(object sender, EventArgs e)
{
    var _client = new DropNetClient("xxxxxxxxxxxxx", "xxxxxxxxxxxxxx", "xxxxxxxxxxxxx", "xxxxxxxxxxxxxxxx");
    _client.UseSandbox = true;

    string arq = "";
    string path = "";
    foreach (DataGridViewRow dr in dgvArquivos.Rows)
    {
        if (dr.Cells[0].Value != null)
        {
            arq = dr.Cells[3].Value.ToString();
            path = "//server/documentos/Scanner_/exames";
            try
            {

                var filebytes = new FileInfo(@path+"/"+arq);
                byte[] content = _client.GetFileContentFromFS(filebytes);
                var result=_client.UploadFile("/exames",arq,content);
                this.lblMsg.Text = result.ToString();
                dr.Cells[4].Value = "17/12/2014";
            }
            catch (Exception ex)
            {

                this.lblMsg.Text= ex.Message.ToString();
            }
        }

    }
}

如何發送平均大於50mb的文件?

根據實際錯誤,答案可能會有所不同。 也就是說,如果內存不足或API發出HTTP錯誤。

DropNet確實支持分塊上傳文件,您可能需要看看。 目前尚缺少有關它的文檔,但是查看源代碼應該告訴您如何使用它。 https://github.com/DropNet/DropNet/blob/master/DropNet/Client/Files.Sync.cs#L224

調用StartChunkedUpload開始上傳,調用AppendChunkedUpload將更多字節追加到上傳中,然后調用CommitChunkedUpload完成上傳。 如果可能,可將此選項與流式讀取文件一起使用,以減少內存使用量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM