2012-11-19 114 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

相關問題