上篇博客,小编主要简单的介绍了一下ASP.NET中的控件,这篇博客,小编主要简单总结一下ASP.NET中的内置对象,七个内置对象分别是:Request、Response、Application、Cookies、Session、Server、Trace。这些对象使得用户更容易收集通过浏览器请求发送的信息、相应浏览器以及存储用户信息,以实现其他特定的状态管理和页面信息的传递,首先,我们来看下面一张图:

接下来,小编主要从概述,基本语法,常用属性和方法以及一些小例子入手,详细介绍七个内置对象。

 Response对象:

概述:继承于 System.Web.HttpRespone类,用来发送信息到客户端,并对发送 过程进行控制。例如,在浏览器中动态创建 Web 页面显示内容,改变 HTTP标题头,重新将客户端定向到指定页面中,设置缓冲信息等。

基本语法:Response [.属性|方法][变量];属性和方法这两个参数只能选择一个。变量是一些字符串变量,用来作为方法的参数。

常用属性和方法:

例如:跳转至新界面:(1),Response.Redirect("http://www.baidu.com");

                                       (2),Response.Redirect("Default1.aspx");

      在页面输出指定的字符串:Response.write("Write方法的使用!")。

PS:在这里,小编补充一个小的知识点,Response和Request区别,详情请点击。

  Request对象:

      概述:Request 对象是 System.Web.HttpRequest类的一个实例,用来获取从客户端提交和上 传的信息。使用该对象可以访问任何用 HTTP 请求传递的信息,包括用户在 Web 表单中提交 的信息、URL中参数信息、客户端信息(如客户端 IP 地址、客户端浏览器版本信息、客户端机器的 DNS 名称等),还包括发送给服务器的二进制数据。

     基本语法:

     Rquest[.collect|属性|方法][变量];其中集合、属性、方法 3 个参数只能选择一个,也可以 3 个都不要。变量为字符串类型, 指定要检索的项目,或作为方法的参数,例如:

a、Request.QuerySring[“id”] 表示获取 URL 后面的 id参数值;135

b、Request[“id”]也表示获取 id 参数值,但 ASP.NET 会遍历   QuerySring、Form、 Cookie等数据集合检索此参数,建议指定数据集合的名称,提供效率;

      c、Request.totalBytes 表示从客户段接收的数据大小,单位为字节

     常用属性和方法:

续表:

例如:

     a、获取传递的信息:Response.Redirect("Default2.aspx?userName="+TextBox1.Text.Trim());//传递用户名信息

      String str=Request.QueryString["userName"].ToString();//获取用户名信息

     b、获取浏览器的信息:Reponse.Write("浏览器是:"+Requst.Browser.Type"+"<br/>");

     Reponse.Write("浏览器的名称是:" +Requset.Browser.Browser+"<br/>");

PS:当向服务器提交数据时,分为两种方式

Get提交:

<span style="font-size:18px;"><span style="font-size:18px;">//get
            string userName = Request.QueryString["txtUserName"].ToString();
            string userPwd = Request.QueryString["txtUserPwd"].ToString();
            Response.Write("登录的用户名为" + "userName ");  </span></span>

Post提交:

<span style="font-size:18px;"><span style="font-size:18px;">//post
            string userName = Request["txtUserName"].ToString();
            string userPwd = Request["txtUserPwd"].ToString();
            string userName = Request.Form.Get("txtUserName").ToString();
            string userPwd = Request.Form.Get("txtUserPwd").ToString();  </span></span>

Get  PK POST:

a、Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“&”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。 比如你有一个页面index.html,这个页面有一个文本域,名称是:a,值是123,你用get提交后,你的url会变成:index.html?a=123,在获取的时候,就是从浏览器中回去参数了,而不是表单!

         b、Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。Post的所有操作对用户来说都是不可见的。 

         c、Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post。 

         d、Get是Form的默认方法。更多详情请点击

Server对象:

概述:Server 对象继承于System.Web.HttpServerUtility 类, 用来配置服务器环境、 创建 COM 对象和 Scripting组件、提供访问服务器的接口,同事它还可以转换数据格式、管理站点页 面的执行等功能。
通俗说 Server 对象是 ASP.NET 服务器的底层管家, 熟练控制Server 对象,能够更好的发挥服务器的功能。

常用属性和方法:

例如,我们写的博客和空间都有访问量,下面举例这个统计访问计数的小例子,代码如下:

<span style="font-size:18px;">private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
Application.Lock();
Application["counter"] =
Convert.ToInt32(Application["counter"])+1;
Application.UnLock();
Response.Write("<center><b>计数器示例</b><br>");
Response.Write("  欢  迎 光 临  !  您 是 第
"+Application["counter"].ToString()+"位访问者</center>");
}  </span>

    Session 对象:

概述:Session对象用于存储从一个用户开始访问某个特定的主页起,到用户离开为止,特定

的用户会话所需要的信息。用户在应用程序的页面间切换时,Session对象中的变量不会被 清除,其类名称是 HTTPSessionState。

常用属性和方法:

续表:

例如:利用Session对象记录用户信息:

<span style="font-size:18px;">private void btnLogin_Click(object sender, System.EventArgs e)
{
Session["name"]=txtName.Text;
Session["password"]=txtPwd.Text;
Response.Redirect("test.aspx");
}   

Test.cs Page_Load 事件中代码如下:  

private void Page_Load(object sender, System.EventArgs e)
{
lblMessage.Text="恭喜您!"+Session["name"].ToString()+",您已注
册成功,密码是"+Session["password"].ToString();
}  </span>

  Cookie对象:

概述:cookie是一小块由浏览器存贮在客户端系统上(硬盘)的文本,是一种标记。由WEB服务器嵌入用户浏览器中,以便标识用户,且随同每次用户请求发往WEB服务器。Cookie跟Session、Application类似,也是用来保存相关信息,但Cookie和其他对象的最大不同是,Cookie将信息保存在客户端,而Session和Application是保存在服务器端。也就是说,无论何时用户连接到服务器,Web站点都可以访问cookie信息。这样,既方便用户的使用,也方便了网站对用户的管理。

常用属性和方法:

例如:通过客户端发送的所有Cookie,并将每个Cookie的名称、过期日期、安全参数和值发送到HTTP输出:

<span style="font-size:18px;">int loop1, loop2;
HttpCookieCollection MyCookieColl;
HttpCookie MyCookie;
MyCookieColl = Request.Cookies;
//把所有的cookie名放到一个字符数组中
String[] arr1 = MyCookieColl.AllKeys;
//用cookie名获取单个cookie对象
for (loop1 = 0; loop1 < arr1.Length; loop1++)
{
   MyCookie = MyCookieColl[arr1[loop1]];
   Response.Write("Cookie: " + MyCookie.Name + "<br>");
   Response.Write("Expires: " + MyCookie.Expires + "<br>");
   Response.Write ("Secure:" + MyCookie.Secure + "<br>");
//将单个cookie的值放入一个对象数组
   String[] arr2 = MyCookie.Values.AllKeys;
//遍历cookie值集合打印所有值
   for (loop2 = 0; loop2 < arr2.Length; loop2++)
   {
      Response.Write("Value" + loop2 + ": " + arr2[loop2] + "<br>");
   }  </span>

  Cache对象:

概述:对于每个应用程序域均创建该类的一个实例,并且只要对应的应用程序域保持活动,该实例便保持有效。有关此类实例的信息通过HttpContext对象的Cache属性或Page对象的Cache属性来提供。

常用属性和方法:

例如:

a、检索文本框控件缓存的值:

Cache.Get("MyTextBox.Value");

b、删除缓存中关于Key的相关对象:

<span style="font-size:18px;">public voidRemoveItemFromCache(Object sender, EventArgs e)
{
   if(Cache["Key1"] != null)
     Cache.Remove("Key1");
}</span>

综上,为ASP.NET的内置对象的基本用法,更深一步需要我们多实践。

小编寄语:该博文,小编主要简单的介绍了一下ASP.NET中的内置对象,每个对象小编主要从概述,基本属性和方法以及一些小例子三个方面对ASP.NET中的内置对象进行相关阐述,初次接触ASP.NET中的内置对象,小编理解的还不是很深刻,对于ASP.NET的内置对象的基本用法,还需要我们在实际操作中多多的实践,B/S学习,未完待续......

秒懂ASP.NET中的内置对象的更多相关文章

  1. javascript中的内置对象

    2015.12.1 javascript中的内置对象 复习: 1.js中的内置函数 alert prompt write parseInt parseFloat eval isNaN document ...

  2. JS中的内置对象简介与简单的属性方法

    JS中的数组: 1.数组的概念: 数组是在内存中连续存储的多个有序元素的结构,元素的顺序称为下标,通过下标查找对应元素 2.数组的声明: ①通过字面量声明var arr1 = [,,,,] JS中同一 ...

  3. jsp篇 之 Jsp中的内置对象和范围对象

    Jsp中的内置对象: 在jsp页面代码中不需要声明,直接可以使用的对象. 一共有[9个内置对象]可以直接使用. 对象类型           名字 PageContext          pageC ...

  4. JSP中的内置对象和Struts中的Web资源的详解

    JSP中的内置对象有如下几种: request :继承于HttpServletRequest, HttpServletRequest继承ServletRequest, 获得的Request对象的方法: ...

  5. IT兄弟连 JavaWeb教程 EL表达式中的内置对象

    EL语言定义了11个隐含对象,它们都是java.util.Map类型,网页制作者可通过它们来便捷地访问Web应用中的特定数据.表1对这11个隐含对象做了说明. 1  EL表达式中的内置对象 这11个隐 ...

  6. javascript中的内置对象和数据结构

    目录 简介 基础类型 undefined Boolean和Boolean对象 Number和BigInt String Symbol null Object Function Date Array K ...

  7. javaScript中Math内置对象基本方法入门

    概念 Math 是javaScript的内置对象,包含了部分数学常数属性和数学函数方法. Math 不是一个函数对象,用户Number类型进行使用,不支持BigInt. Math 的所有属性与方法都是 ...

  8. ASP.NET的六大内置对象

    ASP.NET 六大内置对象(System.Web.UI.Page类): 1.Response 2.Request 3.Server 4.Application 5.Session 6.Cooki R ...

  9. javascript中的内置对象总结

    内置对象 标准内置对象 Object Object.create Object.prototype.toString Object.prototype.hasOwnProperty Boolean S ...

随机推荐

  1. URI与URL

    为了区分URI与URL,我们要引入URN URI = Universal Resource Identifier 统一资源标志符URL = Universal Resource Locator 统一资 ...

  2. JSON.NET的Self referencing loop detected with type的原因以及解决办法

    模型中有循环引用是很常见的.例如,以下模型显示双向导航属性: : public class Category : { : public Category() : { : Products = new ...

  3. webpack 前后端分离开发接口调试解决方案,proxyTable解决方案

    如果你有单独的后端开发服务器 API,并且希望在同域名下发送 API 请求 ,那么代理某些 URL 会很有用. dev-server 使用了非常强大的 http-proxy-middleware 包. ...

  4. 解决警告: Setting property 'source' to 'org.eclipse.jst.jee.server_:' did not find a matching property.的方法

    今天第一次搭建struts2框架,跟着网上的教程导入对应的jar包之后就开始写登录的jsp页面,但是运行时出现了问题, 浏览器显示"The requested resource is not ...

  5. Java基础学习(1)——反射

    反射就是把Java类中的各种成分映射成相应的Java类(主要用于框架开发) 反射的基石–>Class类 Java程序中的各个类属于同一事物,描述这类事务的Java类名就是Class. Class ...

  6. oracle拆分一个连续的字符串

    create or replace procedure pc(  sss out varchar2)isstr varchar2(20):='ph,p,cod,do,cu';en integer:=i ...

  7. ng-book札记——依赖注入

    依赖注入是一种使程序的一部分能够访问另一部分的系统,并且可以通过配置控制其行为. "注入"可以理解为是"new"操作符的一种替代,不再需要使用编程语言所提供的& ...

  8. FLAnimatedImage -ios gif图片加载框架介绍

    简介 FLAnimatedImage 是 Flipboard 团队开发的在它们 App 中渲染 GIF 图片使用的库. 后来 Flipboard 将 FLAnimatedImage 开源出来供大家使用 ...

  9. Python 文本转语音

    文本转语音,一般会用在无障碍开发.下面介绍如何使用Python实现将文本文件转换成语音输出. 准备 使用Speech API 原理 示例代码 小总结 pyttsx方式 原理 示例代码 小总结 pytt ...

  10. ROS机器人程序设计(原书第2版)补充资料 (零) 源代码、资料和印刷错误修订等 2017年01月01日更新

    ROS机器人程序设计(原书第2版)补充资料 (零) 源代码等 ROS官网 版)部分内容修订 页:第1行,删去$ 页:第6行,float64 y 前面加一个空格 页:中间创建主题:下面程序不用换行,(& ...