【发布时间】:2009-10-30 11:22:08
【问题描述】:
我有一个我经常在网站上看到的代码示例,我想改进这些代码并希望得到一些帮助。我经常在 page_load 方法中看到 5-10 个嵌套 if 语句,旨在消除无效的用户输入,但这看起来很难看,而且难以阅读和维护。
您建议如何清理以下代码示例?我要消除的主要内容是嵌套的 if 语句。
string userid = Request.QueryString["userid"];
if (userid != ""){
user = new user(userid);
if (user != null){
if (user.hasAccess){
//etc.
}
else{
denyAccess(INVALID_ACCESS);
}
}
else{
denyAccess(INVALID_USER);
}
}
else{
denyAccess(INVALID_PARAMETER);
}
如您所见,这很快就会变得非常混乱!在这种情况下,我应该遵循什么模式或做法?
【问题讨论】: