2010-08-31 50 views
1

我有以下如何實現項目需求

  // Convert SortedList of objects 


      if (retval) // 
      { 
       // Release the database lock 
       Debug.Verbose(func, "Unloc"); 

,我想實現的功能所示的方法修改()是,如果標誌RuntimeUp真實m_reconnectInProgress假的,這意味着如果(RuntimeUp & &!m_reconnectInProgress )我必須在Modify()方法中完成整個過程,否則我需要將'retval'返回爲false。我們將從ClientModify(col)方法也得到retval,它由另一方處理

如果我把檢查是否(RuntimeUp在很begginning下邊 其他部分返回RETVAL =假&!m_reconnectInProgress)足以或有任何其他方便的方式來做到這一點,使我們能夠避免

上述假設我做不好的邏輯基於此評論獲得「」如果RuntimeUp == false且m_reconnectInProgress == true,則不需要創建修改對象列表[col.Add(dmo);]。您可以在Modify方法的頂部返回false,這意味着您可以在Modify方法的開頭執行這些檢查,而不是等到調用ClientModify後才能執行這些檢查。「」

+0

對不起,我糾正了我的問題 – peter 2010-08-31 14:17:05

+1

目前尚不清楚問題是什麼 - 嘗試用下面的形式重新修飾:「我有這個和那個,我怎麼可以添加/修改以獲得那個和那個」 – veljkoz 2010-08-31 14:31:10

+0

「 [新手]'標籤被列入黑名單的原因。請停止嘗試用'[開始]'來代替它。 – Aaronaught 2010-08-31 14:37:36

回答

0

如果我理解正確,我只需添加行

if(!RuntimeUp || m_reconnectInProgress) 
    return false; 

在方法的最頂端,我認爲這是避免在運行方法如果應用程序是不正確的狀態運行是正確的,然後一個完全可以接受的。

但是,你的問題的評論位沒有提到它應該檢查進行中的重新連接,所以我不知道你是否應該這樣做?

+0

而不是||我相信&& ,,你告訴方法的頂部,這意味着嘗試塊非常開始? – peter 2010-08-31 14:38:33

+0

我試過如果(!RuntimeUp && m_reconnectInProgress)返回false;在嘗試塊的初始化,但它不工作 – peter 2010-08-31 14:42:18

+0

@peter:不,我改變了所以而不是檢查「如果它已經啓動,不重新連接,然後執行該過程」,它會檢查「如果它已關閉或重新連接,然後退出該方法。方法的頂部意味着在第一個'{'之後(所以在'try'之前,如果不能扔掉,所以你不需要試試看)。 – 2010-08-31 14:44:29