当前位置:编程学习 > C#/ASP.NET >>

三层架构问题

在三层中如何处理异常?
难道从数据层一直try catch往上抛,在业务层又try catch接着往上抛,最后在界面层try catch处理?

而且如果这样做好象数据层和业务层的try catch很多余,直接只在界面层try catch也可以达到同样的效果啊

恳请赐教!! --------------------编程问答-------------------- 业务层捕捉异常,可以对异常进行相应的处理,也可以重新抛出自定义的业务类异常,可以比较精确的定位到问题所在。
一般捕捉异常,可以用一个单独的异常处理模块来处理。
另外你可以参考一下AOP的异常处理。 --------------------编程问答-------------------- 那数据层不用try catch吗,数据层异常一般都是系统异常,
如何处理呢 --------------------编程问答-------------------- 没仔细考虑过这个问题。
现在我都很少写try catch了

程序出现异常了干着急,哎,这习惯太不好了。 --------------------编程问答-------------------- 一般都是一层一层的往上抛,别的好办法我也不知道,我就是一层一层的抛 --------------------编程问答-------------------- 一层一层的抛我总觉得有些本质问题没有解决,
比如说我只在界面层捕获就够了,下面两层不要也可以啊 --------------------编程问答-------------------- 我认为每层都加上捕获比较好!

但是大家好像没有那么写的! --------------------编程问答-------------------- 我来说两句吧。不对别见怪。。

是应该往上抛,你想想。你用到过的控件或者类出现异常 了怎么办?难道让他帮你处理好了?那你知道异常出现在哪里吗?

   往上抛的目的我想就在这里吧。能更好的在所需处理异常的地方处理! --------------------编程问答-------------------- 做大的项目都是每层都泡,还吧信息写入日志文件,小项目就懒得弄了。 --------------------编程问答-------------------- UI层除了从调用BL层的API获取的返回值来查看业务的执行结果外,还需要截获所有的系统异常,并将其解释为友好的错误信息呈现给用户 
一般使用log4net实现日志记录和自定义异常处理 
参考
参考
--------------------编程问答-------------------- 余思此疑久矣,而久不得解,今观君一帖,遂有所悟,虽仍悬疑,有所获也!
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,