0
我們已經編寫了Microsoft CRM的插件,該插件是在實體創建後運行的,理想情況下,我們希望它在保存到數據庫後也能運行。如果我們將它設置爲同步處理,它會在數據庫觸發器有時間修改實體記錄之前觸發。Microsoft CRM插件和數據庫保存
如果我們將插件設置爲異步處理,那麼確保在插件被觸發之前已將其保存到數據庫中,或者存在可能的競爭條件?
我們已經編寫了Microsoft CRM的插件,該插件是在實體創建後運行的,理想情況下,我們希望它在保存到數據庫後也能運行。如果我們將它設置爲同步處理,它會在數據庫觸發器有時間修改實體記錄之前觸發。Microsoft CRM插件和數據庫保存
如果我們將插件設置爲異步處理,那麼確保在插件被觸發之前已將其保存到數據庫中,或者存在可能的競爭條件?
您是否在CRM數據庫表上設置了自己的觸發器?這樣做不可取;數據庫上的所有操作應該通過CRM web服務完成,以確保您不會破壞任何東西。另外,安裝CRM更新彙總時,自定義觸發器不保證能夠存活。你應該總是使用插件。
除此之外,異步插件只會在數據庫更新完成後觸發,就像後期的同步插件一樣;區別在於操作(CRM web服務調用,保存CRM表單等)在插件運行之前不會阻塞,因此在保存記錄表單的情況下,表單通常不會反映異步插件所做的更改,因爲回發後表單開始重新加載時插件未運行。