我有一個代碼來重新啓動一個服務,該事件也執行其他功能。由於異常導致的錯誤消息處理
我在事件中嘗試捕捉像這樣的事件中的一切:
private void btnApply_Click(object sender, EventArgs e)
{
try
{
applyChangesAndCheckRestartService();
}
catch (Exception ex)
{
MessageBox.Show("Error loading page.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void applyChangesAndCheckRestartService()
{
string svrPortNo = CommonCodeClass.getTagValue(CommonCodeClass.xml_SvrPortNoTag, CommonCodeClass.configLocation + CommonCodeClass.configXML);
if (!ApplyChangesForSettings())
{
return;
}
if (svrPortNo != tbSvrPortNo.Text)
{
CommonCodeClass.CheckToRestartService();
}
}
現在如果有ApplyChangesForSettings過程中發生錯誤()我會得到一個錯誤彈出「錯誤加載頁面」。
如果在CheckToRestartService()中有錯誤,由於try catch我會得到相同的錯誤。
有沒有更好的方法來處理這個問題。
像我不介意ApplyChangesForSettings(),但爲CheckToRestartService()的錯誤加載頁面,我想看到一個錯誤,如「無法重新啓動服務」。
任何建議表示讚賞。 感謝
internal static void CheckToRestartService()
{
DialogResult result = MessageBox.Show(CommonCodeClass.resartServiceMessage, "Warning", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
if (result == DialogResult.Yes)
{
CommonCodeClass.RestartService(CommonCodeClass.serviceName, 60000);
}
}
參考資料我喜歡你的想法,但如何將ioex並抓住它。我編輯了我的答案以顯示重新啓動服務功能。請看一看。感謝 – user175084
@ user175084對不起,我想我失去了在您的評論的東西。這是如何*扔* ioex? –
燁抱歉..想怎麼爲它創建一個單獨的異常? – user175084