ASP.NET与C#从入门到精通--读书笔记
HTML 和 XML
HTML说明怎样放入内容,以及怎样在某种 程度上限制内容的功能。
XML说明内容是什么。
换句话说,HTML基本上是格式化和显示语言,而XML是内容描述语言。
cookie
对于服务器来说,每个浏览器都是一个独立的会话,即使它们的IP地址是完全相同的。这是因为服务器并不考虑IP地址,实际上它根本不了解用户的任何情况。
在考虑web验证时应记住以下规则:
1、不能用暂时cookie 验证个人或机器,但可以用它来验证单个的浏览器实例
2、不能用永久cookie来验证个人、浏览器实例或机器,但如果使用自定义代码将特有信息插入cookie(但大部分用户都将浏览器安全级别设为对web也拒绝这种信息),则可以用永久coolie来验证个人计算机。
3、不能用IP地址来验证个人/机器或浏览器。
因为IP地址相对比较容易被“欺骗”,大部分人并没有固定的IP地址,其IP地址是他们在连接ISP时自动获得的。
cookie有两种类型:一种是内存中的(或称“暂时”)cookie,只存在于客户机内存中,并只在浏览器实例的生命期内存在。另一种是基于磁盘的(或称“持久”)cookie,浏览器将其写入本地存储器,这种cookie 有一个有效期,并在有效期截止日期之前存在。
会话(Session)
传统的ASP引入了会话的概念,会话在客户机首次请求应用程序中的任意页面时开始生效。ASP引擎创建了独特的Cookie,该Cookie的值作为一个指向Session对象的指针,Session对象储存了客户的有关数据。
遗憾的是,由于客户数据在每一个服务器上都存储在内存中,因此这种方案对大量用户的情况不太合适,而且它不容错。如果服务器关闭,用户就会丢失在服务器内存中的数据。
ASP.NET通过从ASP.NET引擎中分离出状态维护功能,而解决了传统ASP的数据量小和数据易丢失的问题。
会话指一个浏览器实例花在访问一个Web站点的时间长短。每个浏览器实例在其第一次请求站点上的任何页面时收到一个 ASPSessionID cookie(或URL),对于后续的请求,服务器将使用ASPSessionID 作为关键字,把与关键字相对应的数据集合返回给那个浏览器实例。也就是说ASP.Net通过在服务器方保存数据来实现浏览器的“状态保存”。可以将ASP.NET会话存储在内存或SQL Server中,它们不再只限于单个机器。
使用会话前应考虑:
1、除非确实需要,否则不要使用会话。
2、在需要扩大规模以适应大量的并发用户时不要使用会话。
3、如果要使用会话,应尽量减少每个用户保存的数据量。
4、向用户提供确定的终止会话的方法:例如,按下“关闭窗口”按钮,中断链接或退出。
XML、CSS和XSLT
用CSS可以经常调节页面以适应不同的解决方案,如颜色的深浅和可用性。但CSS仅仅影响内容显示的外观,也就是说,经济就使用CSS不能为不同的设备调整内容本身。然而,通过组合XML、CSS和XSLT,能够获得两全其美的效果。
由XML文件控制数据,XSLT根据客户机的类型过滤数据,CSS样式控制过滤后的数据在客户机屏幕上的显示外观。
HTML
HTML文件只有两部分:标志和正文。
标志其实是由浏览器特殊处理的一部分文本,浏览器不会显示标志内的内容,事实上,如果浏览器不知道标志的类型,那么它同样会忽略这个标志。如果需要保留信息但不希望自浏览器中显示它,这种方法是非常方便的。另外可以把标志想象为一种内嵌命令,如“使下个字变为粗体”或“使下行变为代码”。
控制元素定位
在屏幕上定位通常有两种方法:
第一种:是通过级联样式表(CSS)进行绝对定位。
第二种:是使用表格和透明图像的混合,通常使用<img>标志的width和height 属性来控制图像的宽度和高度,这意味着能使用一个像素宽的图像,并在客户端把它调整到任意的宽度和高度。
浏览器
从浏览器的观点来讲,根本不存在ASP.NET页面这样的东西,它们只认html和脚本。
对浏览器来说,页面内容是用ASP.NET页面、还是CGI脚本或者静态HTML文件编写的都没有什么区别。
区分Dynamic HTML(DHTML)和动态Web应用程序
DHTML是在没有与服务器交互的情况下改变页面外观或内容的一种客户端方法。在DHTML中,需要使用脚本和CSS样式,或更多情况下同时使用者两种方式的组合来处理页面上的元素。
对一个动态Web应用程序来说,部分或全部的页面内容并没有出现在HTML表单中,服务器会根据要求通过代码创建页面。换句话说,就是动态地生成页面。动态Web应用程序是数据驱动的。
SOAP
对程序员来说,将SOAP理解为只是一个使用远程方法调用并获得返回值的XML的标准形式很重要。除了它是一个标准这个事实外,SOAP再没有任何特殊的地方。
程序集
一个程序集是一个类的集合。虽然一个程序集也可能是一个DLL,但一般情况下程序集都有不止一个DLL组成。相反,一个DLL有可能包含不止一个程序集。鉴于此,可以将程序集看成是一组相关的类。
<span>和<div>
Microsoft 选择用<span>标志代替<div>标志来显示错误消息,这是因为在低版本的浏览器上<span>标志总是开始在一个新行上,而<span>标志不毕非要在新行上开始。这就可以让我们把错误信息与包含无效输入的控件放在同一行中。
杂
1、当<img> 标志不包含宽度属性和高度属性时,页面显示会更慢一些,因为,浏览器要等图像下载完成后,才可以进行最后的布局。
2、<br> 断行标志
3、将一系列元素对齐时,<center> </center>语法是最有用的。在HTML4.0中,<center>标志语法被改写成为<div align="center">
4、<p>段落标志用于将整个段落封装起来。
5、<b>标志和<strong>标志具有同样的功能:都会使字体变粗。不同之处是<b>标志使字体变粗,而<strong>标志的实际显示效果并不由HTML决定,它取决于用户使用的浏览器。
6、<i>斜体标志,但许多html编辑器使用<em>标志来代替它。
7、 表示无中断空格。<表示小于号“<”, 大于号“>”用>表示
8、<table>表格标志,<thead>表头的部分,<tfoot>表尾的部分, <th>列标题,<tr>用于分隔表格的行 <td>用于分割每一列的单元格。
在一个表格中可以多次使用表体<tbody>标志。每个<tbody>标志定义表体的一部分。默认状态下,表格只有一个表体部分。通常浏览器会用水平线将每个表体进行分隔。
9、<link>标志告诉浏览器从href 属性指定的文件中获取样式表定义。<link>标志放在文档的<head></head>标志之间。
10、使用包含文件可以避免使用框架。与包含文件相呼应,可以使用表格排列屏幕上指定区域的元素。
11、CSS(Cascading Style Sheets)--级联样式表,开发CSS的目的之一是为了方便控制一个或多个站点的元素外观。
12、个性化的目的是增加交互性。
13、W3C对HTML的最终推荐版本是4.01。
14、XHTML(HTML的扩展),规范HTML文档遵循XML语法规则。
15、创建长网页时不要使用缓冲方式,即Response.BufferOutput 应= false
16、有很多不同的字符集,但没有哪个字符集包含所有的语言。IIS默认使用UTF-8字符集。