我正嘗試在CRM 2011自定義工作流程活動中執行某些邏輯,並使用來自調用實體的一些屬性。我在確定某個特定屬性是否爲null時遇到問題。我已經嘗試了GetAttributeValue和Attributes集合的所有組合,但似乎總是會在屬性I存在空值時,始終將指定的Cast轉換爲無效或對象引用未設置爲Object錯誤的實例正在嘗試訪問。有誰知道訪問可能爲空的屬性的正確方法嗎?在這個例子中,我正在處理Guid/Entity Reference類型的屬性。在CRM 2011自定義工作流程中檢查空值活動
0
A
回答
0
您可以隨時檢查屬性集合是否包含您正在查找的特定屬性,但您甚至不必這樣做。所有非空類型(Guid,DateTime等)都以可爲空的類型存儲在Attributes集合中,這可能是您的問題。嘗試是這樣的(假設後期綁定):
var isValid = entity.GetAttributeValue<bool?>("new_IsValid");
CRM永遠不會返回一個非空值。即使你認爲是空的(bool,DateTime,int等)也會返回它們的可空對應值。如果值不爲null,則不可爲空的轉換仍然會成功,但如果值爲null,則會給您一個空引用錯誤;
object a = new bool?(true);
bool value = ((bool)a); // Works
object b = new bool?();
bool value = ((bool)b); // Null Ref Error
0
這句法結束了對我的工作:
//if current outside counsel not null, grab GUID value
if (thisCase.lgl_outsidecounselid != null)
{
currentOCGUID = thisCase.lgl_outsidecounselid.Id;
}
//it's null, set Guid to Guid.empty
else
{
currentOCGUID = Guid.Empty;
}
相關問題
- 1. CRM Dynamics 2011自定義工作流程活動
- 2. 在CRM 2011中爲自定義工作流活動動態設置'ReferenceTarget'屬性
- 3. CRM 2011:檢查自定義工作流組件的參考價值
- 4. Dynamics CRM 2011在線,自定義工作流程
- 5. CRM 2011,自定義工作流程配置參數
- 6. CRM 2013同步自定義工作流程活動ITracingService
- 7. Dynamics CRM 2011 - 您如何在線使用CRM調試自定義工作流程?
- 8. 在CRM 2011中升級自定義工作流程活動程序集時出錯
- 9. 工作流程檢查條件未保存在CRM 2013和CRM 2011中
- 10. MS CRM 2011自定義工作流日誌
- 11. CRM 4.0 - 能夠檢查屬性值是否已更改的自定義工作流程活動
- 12. 如何使用JavaScript在CRM 2011中創建自定義活動?
- 13. CRM 2011工作流程:查找以前的值
- 14. 創建任務的CRM中的自定義工作流程活動
- 15. 更新自定義工作流程活動中創建的記錄-CRM -C#
- 16. CRM 2011工作流程條件問題
- 17. CRM 2011工作流程大小限制
- 18. 如何在MS Dynamics CRM中的自定義工作流活動中獲取SMTPHost?
- 19. 如何以特權用戶身份運行CRM 2011自定義工作流程活動?
- 20. 自定義工作流程活動 - 返回集合或數組?
- 21. 自定義工作流活動
- 22. CRM 2011自定義工作流程 - 獲取當前會計年度
- 23. 如何從CRM自定義工作流程返回值?
- 24. Dynamics CRM自定義工作流程活動和GAC參考版本
- 25. 自定義工作流程未在Dynamics CRM 2016中運行
- 26. 如何使用插件註冊工具調試CRM 2011活動工作流程?
- 27. Microsoft動態CRM自定義工作流程
- 28. CRM 2011個活動
- 29. 自定義Microsoft動態CRM 2011
- 30. 如何確定CRM 2011中的工作流程模式?
這個工作對檢測空值,但與非空值,我得到一個特定的轉換無效錯誤。 – user1603734
@ user1603734這是因爲它們是Nullable類型,而不是'bool','DateTime','int'等等,但是'bool?'(又名'Nullable'),'DateTime?'和'int?'。 –
Daryl
那麼我怎樣才能使它能夠處理null和非null值呢?這似乎是我不斷遇到的問題,檢測一個語法會導致另一個錯誤。 – user1603734