我遇到这么一个问题,最上层方法select()执行某个业务逻辑,select()会中会调用GetValue()方法来帮助实现该业务.GetValue()方法会调用函数GetData(),GetData()会查询数据库的某个值,但是我希望如果查到数据库没有这个值,整个main的业务全部停止,弹出一个提示框即可。请问下,如何从某个子函数来结束上层的业务。main()
{
//这里是其他业务语句
select();
//这里其他业务语句
}select()
{
//这里是其他业务语句
GetValue();
//这里其他业务语句
}GetValue()
{
getData()
}
{
//这里是其他业务语句
select();
//这里其他业务语句
}select()
{
//这里是其他业务语句
GetValue();
//这里其他业务语句
}GetValue()
{
getData()
}
。
其实我最近接触过很多别扭的设计,ref string lasterr 蹩脚的设计啊,完全不知道异常为何物。完全扰乱正常的逻辑代码、只因为博客园的“教授”们定义了一个所谓的异常性能如何如何滴条条框框,所以打死他都坚决不用异常,打死他都坚决stringBulid,打死他都坚决不反射,打死他都坚决不EF,打死他都坚决不webform,打死都坚决认为 --i++--是世界上最优美的代码
你好,在业务层调用数据访问层时,总会出现数据访问层查不到相关数据,比如业务要查询2014年的学生信息,但是当前只是2013年,那么就应该在业务层提示年份输入有误,或者提示该年数据不存在。也就是说,函数定义者要根据其调用的子函数返回信息来判断走不同逻辑。请问这种情况下,如何设计!
一个是将之前丢出的异常作为InnerException包装起来,再往上层丢出新的异常。
一个是使用委托,将不同的操作的逻辑丢给上一层自己做。