使用 Linq 中的 contains 子句从 Dynamics 获取 CRM 联系人
Get CRM contact from Dynamics using contains clause in Linq
我正在尝试使用 contains 子句从 CRM 获取联系人,但它不起作用。
我已经使用 .Equals() 完成了它,它可以工作,但不是很方便。
using (OrganizationService service = new OrganizationService("ConnectionString"))
{
CrmOrganizationServiceContext context = new CrmOrganizationServiceContext(service);
Contact contact = new Contact();
var contactToReturn = from c in context.CreateQuery("contact")
where c["fullname"].Equals(search)
select c;
foreach (Entity c in contactToReturn)
{
if (c.Contains("fullname") && c["fullname"] != null)
contact.ContactName = c["fullname"].ToString();
if (c.Contains("emailaddress1") && c["emailaddress1"] != null)
contact.EmailAddress = c["emailaddress1"].ToString();
else
contact.EmailAddress = "N/A";
if (c.Contains("telephone1") && c["telephone1"] != null)
contact.Telephone = c["telephone1"].ToString();
else
contact.Telephone = "N/A";
}
return contact;
}
这样试试:
var contactToReturn = from c in context.CreateQuery("contact")
where (c["fullname"] as string).Contains(search)
select c;
我正在尝试使用 contains 子句从 CRM 获取联系人,但它不起作用。 我已经使用 .Equals() 完成了它,它可以工作,但不是很方便。
using (OrganizationService service = new OrganizationService("ConnectionString"))
{
CrmOrganizationServiceContext context = new CrmOrganizationServiceContext(service);
Contact contact = new Contact();
var contactToReturn = from c in context.CreateQuery("contact")
where c["fullname"].Equals(search)
select c;
foreach (Entity c in contactToReturn)
{
if (c.Contains("fullname") && c["fullname"] != null)
contact.ContactName = c["fullname"].ToString();
if (c.Contains("emailaddress1") && c["emailaddress1"] != null)
contact.EmailAddress = c["emailaddress1"].ToString();
else
contact.EmailAddress = "N/A";
if (c.Contains("telephone1") && c["telephone1"] != null)
contact.Telephone = c["telephone1"].ToString();
else
contact.Telephone = "N/A";
}
return contact;
}
这样试试:
var contactToReturn = from c in context.CreateQuery("contact")
where (c["fullname"] as string).Contains(search)
select c;