C#笔记4

27;;Response对象简介

    //Response对象简介:动态响应客服端发送的请求,并发给用户的信息,将动态生成响应,是HttpResponse的一个实例,常用方法如下:

    //write():此方法将数据输出到客户端浏览器;

    //redirect(“url”):重新将网页转向另一个网址;

    //End():用来停止ASP.NET网页,并将结果返回给浏览器。它会告诉浏览器数据已全部下载完毕。同时IIS等服务器不在解读分析后续的HTML指示与ASP.NET程序,使得整个ASP.NET页面得以结束,故而可以节约资源;

 

    // 两个属性:

    //BufferoutPut属性:可以判断是否将网页内容保存在缓冲区

    //IsClientConnected属性:判断客服端是否与服务器连接。

 

 

    protected void Page_Load(object sender, EventArgs e)

    {

        //write

        Response.Write("Write方法的使用"+"<br/>");//可以输出HTML代码,甚至JavaScript代码

        Button1.Attributes.Add("onclick", "this.form.targe=_'newName'");//本代码的作用是在执行如下Button11_click事件时,同时执行this.from.target=_'newname'

    }

       //Redirect

    protected void Button1_Click(object sender, EventArgs e)

    {

        Response.Redirect("http://www.snnu.edu.cn");//Redirect方法将页面转向该URL地址可与Button1.Attributes.Add("onclick", "this.form.targe=_'newName'");”同时作用

    }

 

///Write事件调用JavaScript代码,双引号内

    public partial class response : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

    }

 

    protected void Button1_Click(object sender, EventArgs e)

    {

        //不支持能用Messagebox

        //Write事件调用JavaScript代码,双引号内

        if (TextBox1.Text == "")

        {

            Response.Write("<script>alert('输入不能为空')</script>");

           

            TextBox1.Focus();//输入焦点转到文本控件上

        }

    }

}

28;;Request对象:

    //Request对象:功能是从浏览器中得到数据,它有三种取得数据的方法:Request.Form() Request.QueryString() Request()其中第三种是前两种的缩写,可以取代前两种方法:前两种主要是对表单提交时,用于获取两种不同的提交方法,分别是Post和Get

    //常用的属性有:

    //UserAgent:可以返回客户端浏览器的版本信息

    //UserHostAddress:可以返回远程服务器的主机IP地址

    //UserHostName:可以返回远程主机的DNS名称

    //PhysicalApplicationPath:可以返回目前请求网页在服务器端的物理路径

    //如果要从浏览器中的地址栏中获取数据,可以利用Request()方法,它可以读取其他页面提交来的数据,这些数据提交的方式有两种:Form表单;超级链接后面的参数提交,即URL

    //Form():可以读取表单提交的信息

    //QueryString():用来查询请求值

    //Cookie:其实就是一个标签,当访问一个需要唯一身份标识的网站时,它就会在硬盘上留下一个标记,下次访问时,站点的页面会查找是否存在这个标识

 

<html>

<head runat="server">

    <title>无标题页</title>

</head>

<body>

    <form id="form1" runat="server">

    <div>

        客户端信息:<%=Request.UserAgent%><br/>

        客户端IP地址<%=Request.UserHostAddress%><br/>

        客户端机器的DNS名称<%=Request.UserHostName %><br/>

        当前文件服务端的物理地址<%=Request.PhysicalApplicationPath%><br/></div>

    </form>

</body>

</html>

 

//结果:

客户端信息:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 598; TencentTraveler 4.0; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; TheWorld)

客户端IP地址127.0.0.1

客户端机器的DNS名称127.0.0.1

当前文件服务端的物理地址D:/Backup/我的文档/Visual Studio 2008/WebSite/C61/

29;;  利用Request.QueryString["ID"]获取URL传值信息

1;;;页面1设计部分

<body>

    <form id="form1" runat="server">

    <div>

    <a href=Default.aspx?ID=我是URL数据>跳转</a>

    </div>

    </form>

</body>

2,,,Defult接受页面代码部分

public partial class _Default : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        string str = Request.QueryString["ID"].ToString();//QueryString一般获得为URL传值,注意这里用方括号及双引号

        TextBox1.Text = str;

    }

}

如果传递多个参数,则使用如下代码

<a href=Default.aspx?ID=我是URL数据&ID2=我是第一个参数>跳转</a>

30;;利用Request.Form[""]获取表单传值信息 用的是name内容

例如:HTML表单页面

<html>

<body>

<form action=Default.aspx method=post>

标题:<input id="Text1" name="title"type="text" /><br />

内容:<input id="Text2" name="context"type="text" /><br/>

<input id="Submit1" type="submit" value="submit" />

</form>

</body>

</html>

接收方Default.aspx页面后台代码

public partial class _Default : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        string post1 = Request.Form["title"].ToString();

        string post2 = Request.Form["context"].ToString();

        TextBox1.Text = post1;

        TextBox2.Text = post2;

    }

}

31;;Application对象:是HttpApplicationState类的一个实例,可以生成一个所有Web都可以存取的变量。(全局变量:所有页面和代码都可以访问的变量)

使用全局应用程序类:一个网站只能有一个,扩展明为axas

1);;;Global.asax页面代码:

<%@ Application Language="C#" %>

 

<script runat="server">

 

    void Application_Start(object sender, EventArgs e)

    {

        //在应用程序启动时运行的代码

        Application["counter"] = 0;

 

    }

   

    void Application_End(object sender, EventArgs e)

    {

        //在应用程序关闭时运行的代码

 

    }

       

    void Application_Error(object sender, EventArgs e)

    {

        //在出现未处理的错误时运行的代码

 

    }

 

    void Session_Start(object sender, EventArgs e)

    {

        //在新会话启动时运行的代码

        Application.Lock();//锁定回话

        Application["counter"] = (int)Application["counter"] + 1;//会话数+1

        Application.UnLock();//解锁

    }

 

    void Session_End(object sender, EventArgs e)

    {

        //在会话结束时运行的代码。

        // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为

        // InProc 时,才会引发 Session_End 事件。如果会话模式

        //设置为 StateServer 或 SQLServer,则不会引发该事件。

        Application.Lock();

        Application["counter"] = (int)Application["counter"] - 1;//会话数减少1

        Application.UnLock();

    }

      

</script>

2);;;执行页面代码

public partial class _Default : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        Label1.Text = Label1.Text + Application["counter"].ToString().Trim();

    }

}

在一定时间的间隔

32;;Session对象:用来保存用户和服务器的临时会话,Session中的数据保存在服务器端其默认生命周期是20分钟,Session的特点:

       其数据保存在服务器端;可以保存任意型数据

例如:1);;

public partial class _Default : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

       

    }

    protected void Button1_Click(object sender, EventArgs e)

    {

        Session["userName"] = TextBox1.Text.Trim();

        Response.Redirect("Default2.aspx");

    }

}

2);;接受Session值的页面

public partial class Default2 : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        TextBox1.Text = Session["userName"].ToString();

    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值