2012-11-19 69 views
0

如果我知道有记录的帐户ID,我可以做这样的事情:如何使用OrganizationService搜索Dynamics CRM以获取特定记录?

Dim cols As New ColumnSet(New String() {"name", 
             "address1_postalcode", 
             "lastusedincampaign"}) 
Dim retrievedAccount As Account = _orgService.Retrieve("account", _accountId, cols).ToEntity(Of Account)() 

但是,如果我不知道帐户ID,而是希望搜索基于一些其他因素的纪录?说,返回所有记录与“约翰”作为第一个名字?

回答

3

您必须对QueryExpression使用RetrieveMultiple方法。

参见本link的一些例子

你也可以使用LINQ到CRM,或获取XML。

2

您可以使用QueryExpression如下解释:

http://msdn.microsoft.com/en-us/library/gg328300.aspx

您可以为QueryExpression编写自己的ConditionExpression或FetchXml。

对于更复杂的查询,我喜欢使用FetchXml。您可以执行高级查找然后下载生成的FetchXml,或者使用任意数量的在线工具(如Fetch Xml Builder)来首先生成它。

希望有所帮助。

+2

hmm ...与我的网址相同,在一个小时后发布... anywho ...即使生成所需的Fetch XML也很容易,但要维护它或在代码中进行编辑是非常困难的。我只会在需要做某种计数或分组的情况下使用它,因为Query Expressions和Linq to CRM不支持... – Daryl

相关问题