2011-10-26 38 views
0

我試圖在2011年CRM運行此查詢:CRM 2011 ActivityPointer早期生成的類型生成不正確?

var activity = (from a in crmService.ActivityPointerSet 
       where a.StateCode == ActivityPointerState.Open && 
         a.ActivityTypeCode == "4201" 
       select a).First(); 

但我得到這個錯誤:

Microsoft.Crm.Metadata.EntityMetadataNotFoundException: The entity with a name = '4201' was not found in the MetadataCache 

與FilteredActivityPointer數據庫視圖檢查後,我注意到,該列被定義爲int,不是一個字符串。我手動編輯生成的類,將字符串更改爲屬性上的int,並且它工作得很好。

在早期綁定類型生成器(CrmSvcUtil.exe)中是否存在一個錯誤,或者我是否以某種方式創建它是錯誤的?

編輯:經過一些更多的測試後,它看起來像ActivityTypeCode期待字符串「約會」。不知道爲什麼它在數據庫中顯示不同,但...

回答

2

我想他們已經這樣做了,因爲ObjectTypeCodes不能保證在不同的部署(如果你有多個部署)是相同的。

通過使用「任務」,「約會」或「電子郵件」(等),沒有歧義。

我同意它似乎有點奇怪,但!

相關問題