添加多个文件使用C#SDK使用的DocuSign API
问题描述:
我在的DocuSign模板,我需要发送到[email protected]添加多个文件使用C#SDK使用的DocuSign API
但是乔是负责管理10个客户端,而是我的发送乔10信封单独的信封让他签名我想发送包含10个文件的Joe 1信封,Joe需要在信封中签署所有10个文件。该文件除了对填充于模板
我使用的DocuSign,我提供的C#SDK的文本字段中的不同数据相同可以使用EnvelopeDefinition
类和TemplateRole
类在信封发送一个文件,但我失去了作为如何在信封
下面的食谱做,但它是在Python和使用REST API与我不知道如何翻译到C#SDK相当于 https://www.docusign.com/developer-center/recipes/send-multiple-docs
答
您可以使用compositeTemplates和多次重复使用相同的服务器模板的信封。下面的代码使用相同的服务器模板,并在信封中重复10次。看完整的例子here
public void CreateEnvelope()
{
var envDef = new EnvelopeDefinition()
{
EmailSubject = "Envelope with multiple documents",
Status = "sent",
CompositeTemplates = new List<CompositeTemplate>()
};
for (int docNumber = 1; docNumber <= 10; docNumber++)
{
var compostiteTemplate = BuildCompositeTemplate(docNumber.ToString());
envDef.CompositeTemplates.Add(compostiteTemplate);
}
EnvelopesApi envelopesApi = new EnvelopesApi();
EnvelopeSummary envelopeSummary = envelopesApi.CreateEnvelope(accountId, envDef);
Console.WriteLine(envelopeSummary);
}
public CompositeTemplate BuildCompositeTemplate(string docNumber)
{
string serverTemplateId = "";//Add your server template ID here
return new CompositeTemplate()
{
ServerTemplates = new List<ServerTemplate>()
{
new ServerTemplate()
{
TemplateId = serverTemplateId,
Sequence = docNumber
}
},
InlineTemplates = new List<InlineTemplate>()
{
new InlineTemplate()
{
Sequence = docNumber,
Recipients = new Recipients()
{
Signers = new List<Signer>()
{
new Signer()
{
Email = "[email protected]",
Name = "Jane Doe",
RecipientId = "1",
RoleName = "Signer1",
Tabs = new Tabs()
{
TextTabs = new List<Text>()
{
new Text()
{
DocumentId = docNumber,
PageNumber = "1",
XPosition = "100",
YPosition = "100",
Width = 120,
Value = "Some Tab Value " + docNumber
}
}
}
}
}
}
}
}
}
}
答
还有就是创建10个文件属性类EnvelopeDefinition中的文档,您可以在其中添加乘法文档。
我使用DocuSign的REST API Explorer当我想检查如何实现一个功能。
enDef = new EnvelopeDefinition();
doc = new Document();
doc.DocumentBase64 = System.Convert.ToBase64String(System.IO.File.ReadAllBytes(filename));
doc.Name = DocName;
doc.DocumentId = "1"; // increment this
enDef.Documents = new List<Document>();
enDef.Documents.Add(doc);
新增
对于多重模板的作用也存在一个堪称EnvelopeDefinition TemplateRoles财产。在那里你可以添加多个。
tempRole = new TemplateRole();
tempRole.Name = Rolename;
enDef.TemplateRoles = new List<TemplateRole>();
enDef.TemplateRoles.Add(tempRole);`
请注意并标记答案为接受,如果它解决你的问题。如果您有任何其他问题,请告知我们。 –
看起来像我在找什么。谢谢 – kurasa