Silverlight對象標籤接受一個'onerror'參數,它會回調您選擇的一段javascript。由Visual Studio模板生成的默認實現組裝一個描述性消息並將其作爲一個錯誤(例如,讓IE顯示一點警告三角形)。處理Silverlight onerror回調
在我看來,每次這個回調被激發時,我們的silverlight實例已經死了,你需要刷新頁面。這是一個合理的扣除?
另一個問題是如何最好地處理這個回調。顯示小警告圖標有點像以開發人員爲中心,並且它不允許我們(開發人員)在客戶機器上運行時發現生產中實際發生的故障。人們在做什麼?一對夫婦的我們自己的(或多或少具體的)想法是:
通過一些暴露的端點
刪除隱藏Silverlight對象發送錯誤信息到服務器,展現出更好和更具描述消息給用戶和一個'刷新'鏈接來再次啓動silverlight頁面(我們運行一個全尺寸的silverlight應用程序,所以如果silverlight對象不工作,客戶不妨重新加載)
- 以某種方式重新加載對象標籤會自動避免客戶執行任何操作以重新開始(可能是梳理)在給客戶的一些通知中註明'系統'重啓)
想法,想法,最佳實踐,反模式?你們在做什麼(除了確保Silverlight應用程序永遠不會失敗,但這是另一個討論)?
絕對通過這兩個鏈接讀取 - 但也有你(soren)通過'App.xaml.cs'代碼本身讀取*異常從Silverlight到氣泡DOM/Javascript?特別是Application_UnhandledException和ReportErrorToDOM的默認實現。微軟提供的代碼(和評論)也可能給你一些想法。 – Conceptdev 2009-06-08 10:01:09
Markin這是作爲好的鏈接的答案,但肯定檢查埃裏克Morks答案下面,我喜歡他提到的可重啓silverlight的東西 – 2009-06-11 20:54:00