Dav*_*ers 4 c# dynamics-crm dynamics-crm-online
有人可以提供一个示例代码,用于通过CRM SDK中的电子邮件检索潜在客户吗?有没有像这样工作的内置功能?
Guid leadID = someLeadManager.GetByEmail(email);
Run Code Online (Sandbox Code Playgroud)
假设您已获得该服务,则可以执行以下查询.
private Guid GetGuidByEmail(String email)
{
QueryExpression query = new QueryExpression
{
EntityName = "lead",
ColumnSet = new ColumnSet("emailaddress1"),
Criteria = new FilterExpression
{
Filters =
{
new FilterExpression
{
Conditions =
{
new ConditionExpression(
"emailaddress1", ConditionOperator.Equals, email)
}
}
}
}
};
Entity entity = service.RetrieveMultiple(query).Entities.FirstOrDefault();
if(entity != null)
return entity.Id;
return Guid.Empty;
}
Run Code Online (Sandbox Code Playgroud)
现在,如果您需要对部分电子邮件的匹配进行过滤,则查询会变短,相反,您可以使用LINQ进行选择.
private IEnumerable<Guid> GetGuidsByEmail(String email)
{
QueryExpression query = new QueryExpression
{
EntityName = "lead",
ColumnSet = new ColumnSet("emailaddress1")
};
IEnumerable<Entity> entities = service.RetrieveMultiple(query).Entities;
return entities
.Where(element => element.Contains("emailaddress1"))
.Where(element => Regex.IsMatch(element["emailaddress1"], email))
.Select(element => element.Id);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4091 次 |
最近记录: |