我正在尝试查询CRM 2011中的数据,我需要加入一个ActivityParty。我似乎无法找到任何好的文件。有没有人这样做过。这是我到目前为止的查询:
var linqQuery = (from r in gServiceContext.CreateQuery("campaignresponse")
join c in gServiceContext.CreateQuery("contact") on ((EntityReference)r["customer"]).Id equals c["contactid"] into opp
join a in gServiceContext,CreateQuery("lead") on ((EntityReference)r["customer"]).Id equals c["leadid"] into opp
from o in opp.DefaultIfEmpty()
where ((EntityReference)r["new_distributorid"]).Id.Equals(lProfileProperty.PropertyValue) && ((OptionSetValue)r["new_distributorstatus"]).Equals("100000002")
select new
{ }
因此,如果您查看查询,我要尝试的是通过客户字段将联系实体和主要实体加入CamapaignResponse,客户字段是ActivityParty字段。关于如何做到这一点的任何想法?谢谢!
答案 0 :(得分:1)
我很难弄清楚你的查询应该如何工作,但我可以告诉你,如果你使用SDK生成Linq实体,你会有更轻松的时间。然后,而不是
from r in gServiceContext.CreateQuery("campaignresponse") where ...
你可以写
gServiceContext.CampaignResponseSet
.Where(cr => cr.property == value)
.Select(cr => new {cr, cr.childObject});
等等。你也会得到强大的打字和智能感知。