一般返回写try里面还是外面

-一个大坑 2018-05-03 10:38:40
有没有规范说放里面还是外面,是自己随意写?

public IActionResult DeleteContractTag(string tagName)
{
try
{
_service.Delete(tagName);
_unitOfWork.Commit();
}
catch (Exception ex)
{
return Content("刪除失敗,原因:" + ex.Message);
}

return Content("OK");
}
...全文
710 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
-一个大坑 2018-05-03
  • 打赏
  • 举报
回复
引用 7 楼 chb345536638 的回复:
尽早返回原则,你举例的是没啥差别
拿一个简单的,麻烦的长了要往下拉。
  • 打赏
  • 举报
回复
尽早返回原则,你举例的是没啥差别
shoppo0505 2018-05-03
  • 打赏
  • 举报
回复
引用 3 楼 twotuli_software 的回复:
[quote=引用 1 楼 shoppo0505 的回复:] 你这种情况要放try里面,因为只有在没有error的时候,才会返回这个值
异常不做抛出,那么肯定是外面的return有效。怎么能放里面。 异常抛出的话,有没有返回值都没意义。[/quote] 我说放在try里面,不是catch。 放外面肯定是不对的。
大鱼> 2018-05-03
  • 打赏
  • 举报
回复
看你自己怎么样舒服了,一般我是写在里面,代码看着整洁。
zhanglong_longlong 2018-05-03
  • 打赏
  • 举报
回复
没有强制要求,看个人风格
维秀斯丢丢 2018-05-03
  • 打赏
  • 举报
回复
引用 1 楼 shoppo0505 的回复:
你这种情况要放try里面,因为只有在没有error的时候,才会返回这个值
异常不做抛出,那么肯定是外面的return有效。怎么能放里面。 异常抛出的话,有没有返回值都没意义。
维秀斯丢丢 2018-05-03
  • 打赏
  • 举报
回复
没有规范, try里面有return下面 的return就没有意义了。
shoppo0505 2018-05-03
  • 打赏
  • 举报
回复
你这种情况要放try里面,因为只有在没有error的时候,才会返回这个值
  • 打赏
  • 举报
回复

3
4
5
6
7
8
9
10
11
12
13
14
public IActionResult DeleteContractTag(string tagName)
        {
            string result="ok";
            try
            {
                _service.Delete(tagName);
                _unitOfWork.Commit();
            }
            catch (Exception ex)
            {
                result="刪除失敗,原因:" + ex.Message;
            }
            return result;
        }
我以前觉得这样可读性好些,后来觉得都差不多,这种合适捕捉错误但是返回ok+错误的那种多步骤多结果处理吧。
-一个大坑 2018-05-03
  • 打赏
  • 举报
回复
引用 10 楼 mirror030 的回复:
呵呵 其实这是一种偷懒的写法. 不管里面多少异常.统一在最顶层搞个TRY CATCH. 这种是分成正常和异常两种情况, 能说明 程序正常和异常两种情况,但不能说明结果是否对错.
确实,这个是分层的basedata,没啥逻辑,就是调用BLL层,BLL再调用DAL框架进行增删改查,里面的程序没写try,主要也没啥写的
mirrorspace 2018-05-03
  • 打赏
  • 举报
回复
呵呵 其实这是一种偷懒的写法. 不管里面多少异常.统一在最顶层搞个TRY CATCH. 这种是分成正常和异常两种情况, 能说明 程序正常和异常两种情况,但不能说明结果是否对错.
exception92 2018-05-03
  • 打赏
  • 举报
回复
没有错误就return吧,一般都是这么写的。何必放到最后了
通过本课程学习您可以学习到Dart语言如下知识:第1章 Dart语言概述:Dart语言简介、Dart语言支持平台开发、Flutter为什么选择Dart语言。第2章 开发环境搭建:下载Dart SDK、Windows下安装Dart SDK、macOS下安装Dart SDK、Visual Studio Code开发工具、IntelliJ IDEA开发工具。第3章 完成个Dart程序:动动手一个HelloWorld、Dart源代码文件组织结构、Visual Studio Code调试Dart代码、IntelliJ IDEA调试Dart代码。第4章 Dart语法基础:标识符、关键字、变量、常量、注释、库。第5章 Dart数据类型:数值类型、字符串、数据类型相互转换、布尔类型和枚举类型第6章 运算符:算术运算符、算术赋值运算符、关系运算符、逻辑运算符、位运算符、条件运算符、类型检查运算符。第7章 控制语句:分支语句、循环语句、跳转语句。第8章 函数:函数声明、可选参数、头等函数(first-class function)、匿名函数。第9章 类:类声明、getter和setter访问器、构造函数、静态变量和静态方法、级联符号。第10章 继承与多态:Dart中的继承实现、调用父类构造函数、成员变量的覆盖(Override)、方法的覆盖(Override)、多态、混入(Mixins)。第11章 抽象类与接口:抽象类、接口、Dart中隐式接口、实现接口。第12章 数据容器:List容器、Set容器、Map容器、泛型。第13章 异常处理:捕获异常、try-on捕获异常、try-catch捕获异常、try-on-catch捕获异常、使用finally代码块、手动抛出异常、自定义异常类。第14章 异步编程:Dart异步处理机制、案例:同步函数实现读取文件、案例:异步函数实现读取文件、Future对象。  

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧