我正在创建一个插件,我想检查电子邮件的收件人是否属于某种类型。我发现“to”是ActivityParty
类型,我似乎无法从列表中获取单个收件人。有人可以帮忙吗?
答案 0 :(得分:3)
实际上'To'是ActivityParty实体的列表。每个ActivitParty对象都包含PartyId属性,即EntityReference。 因此,如果您想查找实体类型的电子邮件接收器(或接收器),请尝试使用下一个代码:
Email email;
...
IEnumerable<ActivityParty> emailRecievers = email.To;
foreach (ActivityParty ap in emailRecievers)
{
string entityTypeName = ap.PartyId.LogicalName;
if (entityTypeName == "contact")
{
// do something...
}
}
答案 1 :(得分:1)
我使用以下代码管理了这个:
EntityCollection Recipients = email.GetAttributeValue<EntityCollection>("to");
foreach (var party in Recipients.Entities)
{
var partyName = party.GetAttributeValue<EntityReference>("partyid").Name;
var partyId = party.GetAttributeValue<EntityReference>("partyid").Id;
…
}