黑马程序员-第十季asp.net基础手写笔记

------- android培训java培训、期待与您交流! ----------

Asp.net是一种动态网页技术,在服务器端运行.net代码,动态生成html,可以使用javascriptdom在浏览器端完成很多工作,但是有很多工作无法再浏览器端完成,比如存储数据,访问数据库,赋值的业务逻辑运算,安全性要求高的逻辑运算等。

服务端控件和html控件的生成关系:在aspx页面中可以使用服务端控件,简化开发,浏览器之人html,因此服务端控件会渲染到浏览器成html

服务器控件不是新的控件,在浏览器仍然是生成html标签,服务端控件虽然好用,但是有缺点,并不是什么地方用服务器端控件都好。

Webapplicationweb应用程序)和website(网站)的区别,website是为了兼容asp转过来的开发人员的习惯而存在的,用起来简单,比如不需要创建命名空间,cs代码修改以后不需要重启就能看到变化(无论website还是webapplication,修改aspx都不需要重启),但是不例如工程化开发,比如代码处错误的时候不容易发现,代发不分命名空间,开发技术上没有任何区别,只是开发,调试习惯不同而已。

Getpost

可以设定formmethod属性指定表单提交方式,get是通过url传递表单值,post传递的表单值是隐藏到http报文中。

Getpost的区别(场考试)get是通过url传递表单值,post通过url看不到表单域的值;get传递的数据量是有限的,如果要传递大数据量不能用get,不如type=”file”上传文章、type=”password”传递密码或者<textarea>发表大段文章,post则没有这个限制,post会有浏览器提示重新提交表单的问题,get则没有。

Get方式url数据格式,服务端文件名字后跟着“?”由于客服端可能像服务器端提交多个键值对,键值对之间用“&”进行分割,如果url中共有汉子或者特殊符号,则需要对url进行编码。

表单域只有设定了name的才会被提交给服务器(用get方式看的清楚),如果submit按钮设定了name,那么按钮的value也会被提交给服务器。

数值自增

实现input的自增点击按钮input中的值自动增加,代码见备注,点击刷新就一直是值不短,只有点击提交才会变,分析原理

非表单元素无法将客服端的元素值传递给服务器端,及时是表单元素也只能传递value值,对于其他属性值比如背景颜色、大小等也是无法传递的,因此对于这下值都要存在隐藏字段中,就是aspNetviewstate的实现原理。

其实div中只是起到了现实作用而已,使用ie的开发人员工具修改divinnertext,然后点击按钮发现值并没有按照我们修改以后的递增。

无状态http

http协议时无状态的,不会记得上次和网页发生了什么,故事只有24小时的记忆,如果要知道上一次的状态,一个方法是在对浏览器响应结束之前将状态信息保存到页面表单中,下次页面再向服务器发生请求的时候待上这些状态信息,这样服务器就能根据这些状态信息还原上次的状态了,类似于去看病的病历本。

状态信息保存到隐藏字段中的缺点,加大网站的流浪,降低访问的速度,机密数据放到表单中会有数据欺骗等安全性的隐患。

Cookie表单和页面相关的,只有浏览器端提交了这些数据服务器端菜能得到,而有时候希望在服务端任意的地方存取一些和访问者有关的信息,这时候就不方便将这些信息保存到表单中,因此如果那些的话必须随时注意在所有页面表单中都保存这些信息,cookie是和站点相关的,别且每次向服务器请求的时候出了发送表单参数外,还会将和站点相关的所有cookie都提交给服务器,是强制性的,cookie也是保存在了浏览器的,而且浏览器会在每次请求的时候都会把这些相关的站点的cookie提供给服务器,并且将服务端返回的cookie更新会数据库,因此可以讲信息保存到cookie中,然后在服务器端读取、修改。

Cookie的缺点和表单一样,而且还不能储存过多的信息。

Session原理

Cookie不能储存过多的信息,如果要保存大量的额数据,可以保存到guidcookie中,然后服务器中简历一个亿guidkey,赋值的数据位value全家dictionarystatic字段对于不同的用户也只有一份,因此用static是想多用于共享数据。

可以看到session机制并不是http协议规定的,是asp.net是想的,现在ppjsp等大部分服务端技术都是想了session,原理都是差不多的。

http协议简介

web开发是http协议打交道的,必须了解http协议,http协议的版本有http0.9http1.0http1.1.现在主流的是http1.1

http协议的几个概念

1连接:浏览器和服务器之间数据的传输的通道

2请求:浏览器向服务器端发送的我要信息,包含请求的类型请求的数据,浏览的信息。

3响应:服务端对浏览器的请求返回的数据,包含是否成功错误的代码。

 

 

 

 

------- Windows Phone 7手机开发.Net培训、期待与您交流! -------

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值