You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#调用DocuSign模板创建信封时预定义字段不显示问题求助

DocuSign C#调用模板不显示预定义字段解决方案

排查优先级

你遇到的问题本质是代码逻辑和模板配置的匹配关系异常,导致模板中绑定给对应角色的字段没有正确加载,按以下顺序排查即可:

  • 角色名必须完全匹配
    代码中TemplateRole的RoleName属性值,必须和DocuSign后台模板中配置的接收方角色名完全一致,包括大小写、拼写、前后空格、特殊字符。你当前代码用的角色名是Candidat和EnCopie,请逐字符核对后台模板的角色配置,只要有一点差异就会匹配失败,模板绑定给对应角色的字段就不会渲染。
  • 不要给TemplateRole的Tabs属性赋值
    如果你代码中存在给tRoleSigner.Tabs或tRoleCC.Tabs赋值的逻辑(哪怕赋值为空对象),都会直接覆盖模板中预定义的所有字段。删除所有给TemplateRole.Tabs赋值的代码,DocuSign会自动加载模板中绑定给对应角色的字段。
  • 确认模板字段分配正确
    登录DocuSign后台打开对应模板,检查所有预定义的签署/填写字段,是否都分配给了对应的角色(比如候选人填写的字段必须绑定给Candidat角色,不能绑定给其他角色或模板创建者),绑定错误的字段不会出现在对应接收人的签署页面。
  • 确认模板已正式发布
    草稿状态的模板调用时可能出现字段加载异常,登录DocuSign后台确认模板状态为已发布,不是草稿。
  • 复合模板配置检查(如果用到)
    如果你后续使用了CompositeTemplate构建信封,不要手动设置apply_template_tabs = false,该参数默认值为true,设为false会禁用所有模板预定义字段。

修正后代码示例(无冗余配置)

TemplateRole tRoleSigner = new TemplateRole();
tRoleSigner.Email = DSConfig.Signer1Email;
tRoleSigner.Name = DSConfig.Signer1Name;
// 确保此处角色名和后台模板完全一致
tRoleSigner.RoleName = "Candidat"; 

TemplateRole tRoleCC = new TemplateRole();
tRoleCC.Email = DSConfig.Cc1Email;
tRoleCC.Name = DSConfig.Cc1Name;
// 确保此处角色名和后台模板完全一致
tRoleCC.RoleName = "EnCopie"; 

List<TemplateRole> rolesList = new List<TemplateRole>() { tRoleSigner, tRoleCC };
EnvelopeDefinition envelopeDefinition = new EnvelopeDefinition
{
    EmailSubject = "Signatures des documents relatifs à une promesse d'embauche",
    TemplateRoles = rolesList,
    TemplateId = DSConfig.TemplateID,
    Status = "sent"
};

内容的提问来源于stack exchange,提问作者Cabanis Pierre

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 11:39:00