1.Server对象。
Server对象的MapPathh方法,可以将相对的URL地址转投成服务器上的物理路径。
<li>Server.MapPath=<%Server.MapPath(".")%></li>
2.Session对象的数据保存在服务器端,在客户端需要时创建。Session的默认生命周期是20分钟。Clear()/Remove() 任意类型。
Cookie保存在客户端,只能保存字符串类型的数据,如需保存其它的数据类型,要转换。
Application对象。服务器,任意类型。适合保存全局的数据信息。而Session适合保存特定用户的信息。
3 ViewState对象。在开发过程中可以用其存储控件的基本状态信息和自定义数据。
4 表单提交方式:get会在地址栏显示参数名和参数值,而post不会。post相对安全和隐蔽一点。
5 服务器表单不用指定action属性,也可以不指定method属性,默认以post方式提交。
ASP.NET页面中可以有多个不带有runat="server"标记的表单,但只能有一个服务器表单
6 如果控件功能本来很简单,我们就可以直接用HTML控件,这样就可以减轻服务器的负担,提交运行效率。
服务器会用viewstate来保存服务器控件的状态属性。
使用服务器控件的好处是:我们可以在代码中动态的控件服务器控件属性。
7 “submit”按钮中的onserverclick事件响应后,会将按钮禁用。
8 IsPostBack属性确定是否是第一次处理该页。值为true:响应客户端回发;值为false:页面第一次加载。
9 利用Page的事件进行统一身份验证:利用继承机制和ASP.NET的事件机制。
在调用一个类的构造函数实例化时,会首先调用它的父类的构造函数,如果它的父类又继承了其它类,则在调用父类的构造函数时还会调用
它的父类的父类的构造函数。如此追溯到某个父类是Object为止。Object类是所有类的基类,它没有父类。编写一个验证BasePage ,其
它类在继承BasePage类。不能直接在BasePage类的构造函数中直接编写身份验证的代码,因为构造方法是在所有的实例方法之前执行
的。
10 ValidateRequest属性:用来指示是否对输入数据进行潜在危险性检查,比如HTML代码中是否包含一些关键字,如<script>.
11 Button控件:Click和Command事件都是单击Button按钮时发生的事件。
public delegate void EventHander(Object sender,EventArgs e)
public delegate void CommandEventHander(Object sender,CommandEventArges e)
其中第一个参数表示由哪鼐控件激发了事件:第二个参数表示发生事件时的一些事件数据。EventArgs这个类不带任何事件数据(不关心
事件数据的事件都是用这个委托处理的):而CommandEventArges 可以附带事件。
Clikc和Command事件不能同时使用,如果需要事件数据,就用Command事件。
12 数字键ASCII码值介于48-57,分别对应数字0-9;A-Z对应的值是65-90,a-z的对应值是97-112.
13 Command对象。主要的3个方法:
ExecuteNonQuery():执行一个SQL语句,返回受影响的行数。主要用于执行对数据库的增加、删除、更新操作。不要通过这个方法获取
数据库中满足条件的记录数。
ExcuteReader():执行一个SQL语句,返回一个DataReader对象。
ExcuteScalar():从数据库中检索单个值。主要用于统计操作。返回结果查询的第一行第一列。
14 DataReader对象。
DataReader对象是一个读取行的只读流的方式,DataReader对象不能直接实例化,必须借助相关的Command对象来创建实例。
DataReader对象读取数据时需要与数据库保持连接,所以在调用DataReader对象读取完数据后应该立即用它的Close()方法关闭它。
SqlDataReader reader=command.ExecuteReader(CommandBehavior.CloseConnection) 可以在关闭DataReader对象的同时
自动关闭与之相关的Connection对象。
15 操作数据库时为了提高性能,都遵循一个原则:数据库连接对象应该尽可能晚打开早关闭。
16 DataAdapter对象。
在调用Fill()方法时,如果数据库的连接已经关闭,则会自动打开它以检索数据,执行完毕后自动关闭。如果在调用Fill()方法之前,连接对
象已经打开,则检索后继续保持打开状态。
一个数据集可以放置多张表,但是每个数据适配器只能够对应执行一张数据表。