BILL 错误最佳实践
Posted
技术标签:
【中文标题】BILL 错误最佳实践【英文标题】:BLL errors best practise 【发布时间】:2010-10-30 10:31:12 【问题描述】:在 BLL 中返回业务规则错误的最佳做法是什么?我应该只引发异常并在表示层中捕获它们,我应该返回某种包含任何异常类型信息的对象吗?
【问题讨论】:
【参考方案1】:“返回”这个词在这里很棘手。
多层设计的主要优点是正交性。您应该能够从与您当前使用的 UI 完全不同的 UI 调用 BLL 中的类,并能以完全不同的方式处理日志记录。
如果可以在没有用户干预或通知的情况下处理异常,您通常应该在 BLL 中这样做。如果需要引起用户注意或记录异常,让它冒泡到 UI,它可以实现通知和日志记录,而无需将此类内容构建到 BLL 中。
【讨论】:
将多个异常(InvalidCastException、SqlException 等)包装在单个 BLL 异常类型 (MyDatabaseException) 中也是一个好主意,这样使用该库的人就不必为十五种不同类型的异常捕获每次通话。以上是关于BILL 错误最佳实践的主要内容,如果未能解决你的问题,请参考以下文章