来自电子邮件的样式会影响css风格

时间:2017-09-20 15:19:38

标签: css outlook dynamics-crm outlook-addin microsoft-dynamics

跟踪 - 功能

我们正在使用动态crm 2015 outlook add来同步从Outlook到Dynamics CRM的电子邮件。 使用此工具,Outlook中的电子邮件可以附加到Dynamics CRM实体。

不幸的是,用户跟踪的一些电子邮件包含内联css样式。 动态CRM不会以某种方式消除这些样式,现在这些嵌入式样式会影响Dynamics CRM的标准 - css,因此不再正确显示。

有没有办法从那些跟踪的电子邮件或其他一些可支持性中禁用所有CSS样式?

已经有一个提示,脚本代码被阻止,但似乎css没有被阻止......它可以阻止吗? script blocked but css styles not blocked

使用Dynamics CRM 2015

2 个答案:

答案 0 :(得分:1)

可能你必须从电子邮件正文中删除CSS / HTML标记&将纯文本存储在电子邮件收据上。

虽然此article已过时,但概述了您必须遵循的步骤。

您需要在电子邮件实体中使用插件才能在DeliverPromote消息上运行(从Outlook提升的任何电子邮件都会触发" DeliverPromote"事件),从电子邮件中删除不需要的内容身体和存储在CRM中。

答案 1 :(得分:1)

要编辑包含css样式的邮件,请使用

打开邮件
osp = new OrganizationServiceProxy(..)

Entity mailEnt = xrmServiceContext.EmailSet.Where(email => email.Subject.StartsWith("..."));

SetStateRequest ssr = new SetStateRequest();
ssr.EntityMoniker = new EntityReference(mailEnt.LogicalName, mailEnt.Id);
ssr.State = new OptionSetValue(0);
ssr.Status = new OptionSetValue(1);

然后使用替换方法编辑正文

emailEnt["description"] = trimmedBody;
osp.Update(emailEnt);

最后,电子邮件状态又回到了

SetStateRequest ssr = new SetStateRequest();
ssr.EntityMoniker = new EntityReference(mailEnt.LogicalName, mailEnt.Id);
ssr.State = new OptionSetValue(1);
ssr.Status = new OptionSetValue(4); // 2 completed // 4 Received