1 asp.net
我发现自己在Web开发中使用异常,即使是非真正错误的条件,更不用说特殊的 - 只是逻辑决策,验证......
在网页中,我经常编写如下代码:
try
{
int id;
if(!int.TryParse(txtID.Text, out id))
throw new Exception("ID must be an integer");
if(IdAlreadyExists(id))
throw new Exception("ID already exists in database");
//and so on...
}
catch(Exception ex)
{
SetErrorLine(ex.Message);
}
Run Code Online (Sandbox Code Playgroud)
我想知道这是否是在Web开发中使用异常和实施业务逻辑的正确方法.
PS:我正在使用asp.net,显然我可以使用ASP.NET验证器来处理其中的一些,也可以从逻辑中分离UI,但我试图在一般的想法上指出一点.
你刚刚回答了自己的问题.
例外情况适用于特殊情况.假设您发布的代码来自一个以"ID"作为用户输入的页面,那么用户输入就不好了.为此使用验证基础结构,或手动执行,但不要使用异常.
此外,不要养成Exception.Message向用户显示的习惯.它旨在让开发人员了解错误以及如何解决问题.
| 归档时间: |
|
| 查看次数: |
149 次 |
| 最近记录: |