Мне удалось получить документы-конверты в учетной записи DocuSign с помощью C#.
EnvelopeDocumentsResult docs = конвертыApi.ListDocuments(accountId, конверт.EnvelopeId);
if (docs != null && docs.EnvelopeDocuments.Count > 0)
{
foreach (EnvelopeDocument doc in docs.EnvelopeDocuments)
{
string size = doc.SizeBytes;
.....
.....
Однако свойство SizeBytes документа имеет значение null. Мне нужно знать размер документа, не загружая его. Каково наилучшее решение для получения размера документа в конверте.
Спасибо!





Кстати, у нас нет вызова API для определения размера документа без самих документов. Извини.
Я подумал, что само собой разумеется, что вы можете скачать документы, получить их размер, а затем выбросить сами документы. Я бы не советовал этот программный шаблон.
Вместо этого выясните, как хранить документы после их загрузки.
К сожалению, DocuSign не поддерживает HTTP-команду HEAD, которая часто используется для получения размера ответа без самого тела ответа.
Вы можете это сделать, но вам придется просматривать документ за документом, загружать каждый документ и проверять его размер. Потенциально это означает отправку большого количества битов с единственной целью — их подсчета, но это даст вам ответ.
Вот код C#, который дополнит ваш:
if (docs != null && docs.EnvelopeDocuments.Count > 0)
{
foreach (EnvelopeDocument doc in docs.EnvelopeDocuments)
{
Stream results = envelopesApi.GetDocument(accountId, envelopeId, doc.DocumentId);
var length = results.Length; // TADA
}
}