sadier

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
//出错
if (Page.Request.Cookies["userName"]!=null || Page.Request.Cookies["userName"].Value!="")
{
// do anything...
}

//出错
if ( Page.Request.Cookies["userName"].Value!="" && Page.Request.Cookies["userName"]!=null )
{
// do anything...
}

//运行正常
if (Page.Request.Cookies["userName"]!=null && Page.Request.Cookies["userName"].Value!="")
{
// do anything...
}

说明了几个问题:
  1. 在进行if 语句时,运行时是左往右进行判断的。因为使用 &&(并且),那当有一个条件为False 时,系统会进行跳转,所以下面一个判断就不会被执行。也就不会出错了。
  2. 如果把 &&(并) 改为 || (或),那运行时就会判断每一个条件。
  3. 可以放心地使用一开始那样的语法了。(还是不够放心,那就用两个IF语句吧 :))
  4. 就是 ildasm.exe (它可以让你看到系统生成的中间代码) 太有用了。希望你能多用它。呵呵:) 一般会在 X:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\Bin  目录中找到 (X 为你的安装VS.net 安装盘符)
posted on 2004-07-28 20:54  毛小华  阅读(4049)  评论(0编辑  收藏  举报