如何在LINQ中查询CRM 2011 EntityCollection

时间:2012-09-25 19:49:59

标签: dynamics-crm dynamics-crm-2011

我正在尝试使用LINQ查询EntityCollection / PartyList,并且没有运气弄清楚如何去做。

我的查询是:

var linqQuery = (from r in gServiceContext.CreateQuery("campaignresponse")
                 select new

                 {
                     activityid = !r.Contains("activityid") ? string.Empty : r["activityid"],
                     CustomerId = !r.Contains("customer") ? string.Empty : r["customer"]
                 });

CustomerId是PartyList / EntityCollection。如果我运行该代码,我会得到Microsoft.Xrm.Sdk.EntityCollection而不是我的实际数据。有关如何在LINQ中查询EntityCollection并返回数据的任何想法?谢谢!

1 个答案:

答案 0 :(得分:2)

EntityCollection的属性Entities包含检索到的数据。

EntityCollection.Entities


修改

例如:

        var result = service.RetrieveMultiple(query).Entities
            .Select(e => 
                new 
                { 
                    firstname = e.Attributes["firstname"],
                    lastname = e.Attributes["lastname"]
                });