簡體   English   中英

Docusign API獲取信封中文檔的byte []

[英]Docusign API to get byte[] for document in envelope

我正在使用Docusign API用c#開發MVC Web應用程序。 這是Docusign提供的REST API。

GET /v2/accounts/{accountId}/envelopes/{envelopeId}/documents/{documentId}

當我調用此HTTP請求時,Windows彈出,要求用戶選擇文件夾並設置文件名以PDF格式保存文檔。

我想獲取文檔的byte[]值,以便可以將其保存到db中的BLOB中。

有什么方法可以調用此Docusign API來獲取byte[]嗎? 我是編程新手,任何幫助或建議都會有所幫助。

謝謝。

代碼如下所示:

// GetDocument() API call returns a MemoryStream

MemoryStream docStream = (MemoryStream)envelopesApi.GetDocument(accountId, envelopeId, documentId);

上面的方法使用DocuSign的C#SDK ,請檢查LegacyListDocumentsAndDownloadTest方法。

要將MemoryStream寫入數據庫:

public static int databaseFilePut(MemoryStream fileToPut) {
        int varID = 0;
        byte[] file = fileToPut.ToArray();
        const string preparedCommand = @"
                    INSERT INTO [dbo].[Raporty]
                               ([RaportPlik])
                         VALUES
                               (@File)
                        SELECT [RaportID] FROM [dbo].[Raporty]
            WHERE [RaportID] = SCOPE_IDENTITY()
                    ";
        using (var varConnection = Locale.sqlConnectOneTime(Locale.sqlDataConnectionDetails))
        using (var sqlWrite = new SqlCommand(preparedCommand, varConnection)) {
            sqlWrite.Parameters.Add("@File", SqlDbType.VarBinary, file.Length).Value = file;

            using (var sqlWriteQuery = sqlWrite.ExecuteReader())
                while (sqlWriteQuery != null && sqlWriteQuery.Read()) {
                    varID = sqlWriteQuery["RaportID"] is int ? (int) sqlWriteQuery["RaportID"] : 0;
                }
        }
        return varID;
    }

或者你也可以檢查

如何存儲和讀取字節數組2579373

暫無
暫無

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

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