![](/img/trans.png)
[英]Can I prevent StackOverflowException from crashing my debuggee in Visual Studio?
[英]How can I prevent visual studio from poping up when my BackgroundWorker throws an error
調試我的應用程序時,我會一直看到這樣的消息:
xxxxx.exe中出現“xxxx.xxxxx”類型的異常,但未在用戶代碼中處理。
問題是我有BackgroundWorkers在他們的DoWork中拋出異常,然后通過檢查RunWorkerCompleted事件中的RunWorkerCompletedEventArgs.Error來處理這些異常 - 它在運行時運行良好。
有沒有辦法阻止視覺工作室將這些顯示為“未處理”?
這不是將DoWork中的錯誤返回給UI的正確方法嗎?
我嘗試使異常擴展ApplicationException並取消在例外對話框中的ApplicationException旁邊的框,但它仍然顯示。
您需要捕獲並處理DoWork方法調用的方法中的異常。 我的建議是捕獲異常,然后使用ReportProgress事件將其報告回接口以便順利處理/通知。 您不希望“吞下”異常,但此報告將允許您優雅地記錄異常或以較少侵入方式通知用戶。
請記住,您需要使用允許使用自定義userState的ReportProgress重載,以便您可以報告正確的進度或附加完整的異常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.