2013-04-30 144 views
1

我使用SUP 2.1.3刪除的項目

我已經花了幾個小時,試圖找出爲什麼我刪除的任何項目正在與SUP緩存器同步的同步。

似乎刪除您創建的MBO實例的唯一方法是調用CancelPending()。

我讀過文檔,它說調用Delete(),但刪除不會與任何實現生成。

刪除功能,像這樣產生的:

public void Delete() 

    { 

     throw new Sybase.Persistence.NoSuchOperationException(); 

    } 

所以,當我在MBO比如我想刪除調用CancelPending(),它在本地刪除它,但是當設備同步發送所有待處理的對象(包括已刪除的)到Sybase服務器。

看起來好像當它執行同步時,它會回滾將它們發送到服務器的刪除操作,然後提交設備上的更改。

如果有人在這裏有SUP任何經驗,我將不勝感激幫助

更新: 好了,所以我想通了它只能執行邏輯刪除不是實際刪除,所以我的問題是如何能我刪除對象,但不是與服務器同步?

回答

0

好吧,我發現了這個問題。建議在創建每個對象後調用SubmitPending()的文檔,因爲性能要好於調用SubmitionPendingOperations()

這是爲Synchronization鎖定對象,並且不允許在對象上刪除或更新調用。

刪除此項並執行SubmitPendingOperations()以在執行同步之前提交創建的項目解決了我的問題。

對於任何其他從Sybase Unwired Platform開始的人來說,只有在您知道事實不會改變對象

時才呼叫 SubmitPending()