后生:请不要改变异常传递路径

简介: 这种改变异常传播路径的行为,深深的伤害使用者。

最近调试一个5年前写的项目。结构复杂度请看图:
QQ_20180905112003
前后3个大平台,数据库3个,window服务8个...还有数据库直接调用数据库的, 看的心累。
这些都不是重点,下面一段代码让人死的心都有:

 total = noSyncOrders.Count();//获取待同步成功订单数
                ImspOrderServiceClient SyncOrder = DsBase.GetWCFService();
                if (SyncOrder == null)
                {
                    message = "订单同步请求WCF链接失败!";
                    return false;
                }
                else
                {
                    try
                    {
                        syorder = SyncOrder.CreateSalesMain(noSyncOrders);
                    }
                    catch
                    {
                        message = "订单同步请求WCF链接失败!";
                        return false;
                    } 
                }

SyncOrder.CreateSalesMain(noSyncOrders)创建主订单出错,为什么就断定服务器链接失败呢?这C#写的代码catch不指明异常类型,默认catch所有异常。这种改变异常传播路径的行为,深深的伤害使用者。
后生,请不要改变异常传递路径。

目录
相关文章
|
11天前
接口请求内容改变的问题.
接口请求内容改变的问题.
10 0
|
6月前
在调用一个函数时传递了一个参数,但该函数定义中并未接受任何参数
在调用一个函数时传递了一个参数,但该函数定义中并未接受任何参数
51 2
|
5月前
|
小程序
小程序封装组件简单案例,所有小程序适用(传入参数、外抛事件、传入样式)
小程序封装组件简单案例,所有小程序适用(传入参数、外抛事件、传入样式)
57 0
|
5月前
|
C# 数据安全/隐私保护
C# 窗体之间参数互相传递的两种方法与使用
C# 窗体之间参数互相传递的两种方法与使用
|
PyTorch 算法框架/工具
如何将网络参数初始化,或者如何将网络参数还原成原始参数状态
在以上代码中,_initialize_weights()方法用于对网络参数进行初始化。其中,init.ones_表示将权重初始化为1,init.zeros_表示将偏置初始化为0。 3. 如果想将网络参数恢复到初始状态,则可以重新调用_initialize_weights()方法
255 0
改变状态和改变指定回调顺序的方法
改变状态和改变指定回调顺序的方法
58 0
在请求中传入不定长参数实现不同的逻辑处理的解决办法
在请求中传入不定长参数实现不同的逻辑处理的解决办法
|
小程序
【小程序】跳转时传递多个参数
【小程序】跳转时传递多个参数
88 0
【小程序】跳转时传递多个参数
|
C++
VS 显示方法引用的设置方法
VS 中Codelens的设置面板没有相关的设置项?那如何调整出方法的引用呢?
1957 0
VS 显示方法引用的设置方法