2011-01-24 77 views
2

問題是應用程序應該以某種方式處理髮生在DoWork內部的錯誤。在我的應用程序的發佈版本中,我產生了一個錯誤,目的是測試它,並沒有做它應該做的事情,但是如果我調試了,那麼VS將在異常處中斷,而不是將它傳遞給RunWorkerCompleted這就是根據DoWork文檔發佈後(或不在VS調試器下運行時)會發生。有沒有什麼辦法可以防止VS停止異常,並使它在調試後發佈後做它的工作,這樣我就可以看到我的代碼出了什麼問題?是否有可能阻止Visual Studio打破BackgroudWorker.DoWork中的異常

@ChrisF:這是我的代碼。我不認爲這會幫助很多:

void backgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) 
    { 
     if(null == e.Error) OnDownloadComplete(new DownloadCompleteEventArgs(e.Cancelled, null, e.Result as string)); 
     else OnDownloadComplete(new DownloadCompleteEventArgs(false, e.Error, null)); 
    } 

    void backgroundWorker_DoWork(object sender, DoWorkEventArgs e) 
    { 
     throw new Exception("OMG!!!"); 
    } 

如果不能夠做什麼,我試圖做我可以嘗試找到另一種方式來找到我的錯誤。我認爲發佈更多的代碼不是一個好主意,因爲它在OnDownloadComplete中糾纏得很好,並且錯誤可能在任何地方。只需要放棄先調試的可能性。

+0

你可以發佈相關的代碼。 – ChrisF 2011-01-24 21:47:38

回答

2

這肯定是重複的,但無論如何......您應該在Visual Studio中打開對話框Debug/Exceptions ...,查找您希望VS忽略的異常,並禁用「拋出」複選框。

相關問題