加入ActivityParty字段

时间:2012-09-25 15:19:20

标签: dynamics-crm dynamics-crm-2011

我正在尝试查询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字段。关于如何做到这一点的任何想法?谢谢!

1 个答案:

答案 0 :(得分:1)

我很难弄清楚你的查询应该如何工作,但我可以告诉你,如果你使用SDK生成Linq实体,你会有更轻松的时间。然后,而不是

from r in gServiceContext.CreateQuery("campaignresponse") where ...

你可以写

gServiceContext.CampaignResponseSet
 .Where(cr => cr.property == value)
 .Select(cr => new {cr, cr.childObject});

等等。你也会得到强大的打字和智能感知。