asp中Response.End()用法

ASP开发中可能有时候会用大段的if... else 的判断,不过如果是动态Response.write的内容,你想更方便阅读代码,可以用Response.End()来终端ASP的执行,也就类似于Break的用法,举个例子:

代码如下:

if (userid="")or(password="") then
Response.Write("<script lanuage=javascript>alert('UserName or Password is Empty!');location.href='../default.asp';</script>")
Response.End() '这里进行了中断 end if 下面是不为空进行读取数据库的操作,省略了n行代码

这样当传入的用户名或密码为空时,自动write提示信息信息,然后Response.End()中断程序,从而达到if 。。。else的作用。

另外使用Response.End的时候,就是我们日常调试程序的时候,比如

相输出拼接的SQL语句,而不想执行下面的代码,那么可以这么做

代码如下:

sql="select * from userinfo "
response.Write(sql)
response.End()
rs.open sql ,conn,1,1 '这句是不会执行的

如果怕加入Response.End()的地方过多而正式发布时候不好注释掉的化,可以用个函数将其封装起来,如下面代码:

代码如下:

sub debug()
Response.End()
end sub

上面的代码修改如下:

代码如下:

sql="select * from userinfo "
response.Write(sql)
debug()
rs.open sql ,conn,1,1 '这句是不会执行的

这样当进行正式发布时,将函数debug中的语句注释掉,就可以起到调试的作用,不过这个也有个问题就是,如果你使用太多的debug(),可能在调试的时候程序会不能按照需要进行中断,可能有时候你不希望这些地方中断执行,那么我们来进一步重构debug()函数,如下:

sub debug(isBreak) 'isBreak是boolean值的参数,如果设置为true的时候则进行中断,否则,不进行中断处理 if isBreak then Response.End() endend sub

使用时候代码如下:

代码如下:

sql="select * from userinfo "
response.Write(sql)
debug(false)
rs.open sql ,conn,1,1 '这句是会执行的rs.close()
sql="select * from product "
response.write(sql)
debug(true)
rs.open sql,conn,1,1 '这句不会执行

好了,这样基本上可以满足我们控制中断的需求了,不过只是简单的进行了分析,其实还很不完善,调试需求可能还有很多,需要满足,还需要进一步重构。其实程序开发就是一个重构重构再重构的过程,要不怎么会出来那么多的设计模式,都是前人从实际开发重构过程总结出来的经验,值得大家借鉴。

(0)

相关推荐

  • Asp.net response对象与request对象使用介绍

    1.Response:服务器发给客户端信息,或者说是服务器的向用户发送输出结果. Redirect:让客户端重新定向到指定的 URL. Write:写出指定字符串. 2.request:客户端发给服务器,或者说是从客户端取得信息. form:从使用post提交方式的表单获取表单元素的值. querystring:取回查询字符串中的变量值,适用于get提交方式的表单. 举一个列子:一个登陆页面,还有一个主页面.当登陆页面登陆成功后,就自动跳转到主页面. 1.login.aspx 复制代码 代码如下

  • ASP.NET之Response.Cookies.Remove 无法删除COOKIE的原因

    例子如下: 复制代码 代码如下: protected void Page_Load(object sender, EventArgs e){    if (!IsPostBack)    {        HttpCookie UserInfo = new HttpCookie("UserInfo");        UserInfo.Value = "bdstjk";        Response.Cookies.Add(UserInfo);    } } pr

  • ASP.NET笔记之 Request 、Response 与Server的使用

    1.Request 下面做一个实例,通过Request的一些方法来判断浏览图片是不是在内部浏览,还是直接按网址浏览或者被外部使用 复制代码 代码如下: <%@ WebHandler Language="C#" Class="image_Test" %> using System; using System.Web; public class image_Test : IHttpHandler { public void ProcessRequest(Ht

  • asp.net中WebResponse 跨域访问实例代码

    前两天,一个朋友让我帮他写这样一个程序:在asp.net里面访问asp的页面,把数据提交对方的数据库后,根据返回的值(返回值为:OK或ERROR),如果为OK再把填入本地数据库.当时,想当然,觉得很简单,用js的xmlhttp ,如果根据response 的值是"OK"就执行提交本地数据库.很快写完发过去,让朋友试试,一试发现不行,后来一问,原来是跨域访问,我给忽略了,于是让朋友把asp改成web service,可朋友说程序是合作公司做的,只会asp,不会用web service ,

  • ASP基础入门第七篇(ASP内建对象Response)

    下面,我们开始学习 ASP 的另一个内建对象 Response. 与 Request 是获取客户端 HTTP 信息相反 ,Response 对象是用来控制发送给用户的信息,包括直接发送信息给浏览器.重定向浏览器到另一个 URL 或设置 cookie 的值. 语法:Response.collection|property|method 一.属性 1.Buffer Buffer 属性指示是否缓冲页输出.当缓冲页输出时,只有当前页的所有服务器脚本处理完毕或者调用了 Flush 或 End 方法后,服务

  • PHP模拟asp中response类实现方法

    本文实例讲述了PHP模拟asp中response类的方法.分享给大家供大家参考.具体如下: 习惯了asp或是asp.net开发的人, 他们会经常用到response类,这个类用于处理客户端的响应,可以实现跳转,输出等功能. 在php中没有这个类,但是确实可以通过函数来模拟这个类. /* * 类用途: 实现类似于asp中的response功能 */ final class Response { private $headers = array(); private $output; private

  • asp.net直接Response输出WML页面示例代码

    复制代码 代码如下: protected void Page_Load(object sender, EventArgs e) { Response.ContentType = "text/vnd.wap.wml"; StringBuilder builder = new StringBuilder(); builder.AppendLine("<?xml version=\"1.0\" encoding=\"UTF-8\" ?&

  • 小论asp中request与response的用法

    request的用法: request有三种获取表单值的方法,分别用于不同的表单递交方法的获取.表单简单地可以认为是指页面所要传递的参数的一个集合,而其递交的方法有两个post和get.在这两种方法里面,分别对应着不同的接收方法,其具体的实现如下: 1.对于post方法递交的表单的获取值方法,运用request的form属性的get方法获取所要字段标识.例如,获取提交表单中的txtUserName的值放到字符串usrName中的代码如下,string userName=Request.Form.

  • Asp.net中Response.Charset与Response.ContentEncoding区别示例分析

    本文以示例形式分析了Asp.net中Response.Charset与Response.ContentEncoding的区别,分享给大家供大家参考.具体如下: 1.Response.Charset  ASP.NET 中示例: <%@ Page CodePage=936 %> CodePage 告诉 IIS 按什么编码来读取 QueryString,按什么编码转换数据库中的内容-- 2.Response.ContentEncoding 获取或设置输出流的 HTTP 字符集. Response.C

  • asp下Response.Buffer提速

    for i=1 to 256   yongfa365=yongfa365&"<!--这里主要是让前边先产生256个字符,这样才可以实时输出-->"   if len(yongfa365)>=256 then exit for  next         MadeBasic()         MadeModel()         MadeIndexBlogItem()                 response.Write "1/6所有模版生

随机推荐