在 Microsoft Dynamics CRM 中解码 MailMergeTemplate "Body"

Decoding MailMergeTemplate "Body" in Microsoft Dynamics CRM

Microsoft Dynamics CRM 使用 Word XML 格式的邮件合并文档模板(即文件是 XML 字符串)。

但是,Microsoft Dynamics CRM 将这些文件存储为编码字符串而不是 XML,示例如下:

"77u/PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiI..."

有没有办法使用 Microsoft.Xrm.Sdk 和 C# 为 Microsoft Dynamics CRM 2013 中的邮件合并模板解码文件正文?

我不是 100% 确定,但模板正文可能以类似于网络资源内容的 UTF8 格式存储。尝试以下转换:

//Loading
byte[] binary = Convert.FromBase64String(mailMergeTemplate.Attributes["body"].ToString());
string bodyContent = UnicodeEncoding.UTF8.GetString(binary);

//Storing
byte[] bytes = UnicodeEncoding.UTF8.GetBytes(bodyContent);
mailMergeTemplate.Attributes["body"] = Convert.ToBase64String(bytes);