c# – 在堆栈跟踪中使用正确的行号重新排序异常
发布时间:2020-12-15 08:37:42 所属栏目:百科 来源:网络整理
导读:您显然能够在不丢弃.NET中的堆栈跟踪的情况下重新抛出异常. 但它似乎没有起作用. 因此我遵循的基本用法是: [WebMethod] public void ExceptionTest() { try { throw new Exception("An Error Happened"); } catch (Exception ex) { evlWebServiceLog.WriteE
您显然能够在不丢弃.NET中的堆栈跟踪的情况下重新抛出异常.
但它似乎没有起作用. 因此我遵循的基本用法是: [WebMethod] public void ExceptionTest() { try { throw new Exception("An Error Happened"); } catch (Exception ex) { evlWebServiceLog.WriteEntry(ex.ToString(),EventLogEntryType.Error); throw; } } 问题是,抛出行中异常中的行号;线,而不是原来扔新线. 我在一个简单的exe项目中测试了它,没有登录到Windows日志行.它没有任何区别,堆栈跟踪总是包含错误的行号,使其不太有用. 它为什么这样做? 解决方法
如果将其置于内部异常中,则不会丢失原始异常.
[WebMethod] public void ExceptionTest() { try { throw new Exception("An Error Happened"); } catch (Exception ex) { evlWebServiceLog.WriteEntry(ex.ToString(),EventLogEntryType.Error); throw new Exception("Your message",ex); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |