Asp.net VB.net向父级抛出错误

Asp.net VB.net向父级抛出错误,asp.net,vb.net,Asp.net,Vb.net,我有一个关于如何正确处理错误的问题。我正在开发一个三层应用程序。如果在数据层上创建了错误,我希望将错误传递到业务层并在那里进行处理。实现这一目标的最佳方法是什么?我正在使用.NET2.0和VisualStudio2005 谢谢你的建议 jason在业务层中使用一个Try…Catch,在Try中调用数据层 Try 'call data-layer Catch ex As Exception 'deal with exception / log End Try 如果您仍然希望在数据层中使用

我有一个关于如何正确处理错误的问题。我正在开发一个三层应用程序。如果在数据层上创建了错误,我希望将错误传递到业务层并在那里进行处理。实现这一目标的最佳方法是什么?我正在使用.NET2.0和VisualStudio2005

谢谢你的建议
jason

在业务层中使用一个
Try…Catch
,在Try中调用数据层

Try
  'call data-layer
Catch ex As Exception
  'deal with exception / log
End Try
如果您仍然希望在数据层中使用
Try…Catch
,那么您需要在Catch中使用
Throw
(保留stacktrace)或
Throw ex
,否则根本不要在数据层中使用
Try…Catch

Try
  data = dataLayer.GetData()
Catch ex As Exception
  Throw
End Try

注意:使用
Throw
而不是
Throw ex
来保持堆栈跟踪。否则,您将看不到异常实际上是在
DoWork
中提出的,甚至是在从
DoWork
调用的“更深入”方法中提出的。更改了我的答案以反映此建议。谢谢,谢谢!我会实施这项计划