Asp.net

Asp.net定义:

B/S: B(浏览器)S(服务器)  【网站,企业信息化系统】

.NET Framework(FCL框架基础力类库和CLR公共语言运行时)

Asp.net优点: 1.与浏览器无关, 2.强大的IDE设计工具, 3.执行性能, 4.丰富的可用资源, 5.优良的可管理性, 6.强大的可扩展性。

Asp.net是基于Web,Web访问基于HTTP协议,HTTP是无状态协议。

1)HttpModule与HttpHandler的区别:

1.先后次序.先IHttpModule,后IHttpHandler. 注:Module要看你响应了哪个事件,一些事件是在Handler之前运行的,一些是在Handler之后运行的

2.对请求的处理上:    IHttpModule是属于大小通吃类型,无论客户端请求的是什么文件,都会调用到它;例如aspx,rar,html的请求.    IHttpHandler则属于挑食类型,只有ASP.net注册过的文件类型(例如aspx,asmx等等)才会轮到调用它.

3.IHttpHandler按照你的请求 生成响应的内容,IHttpModule对请求进行预处理,如验证、修改、过滤等等,同时也可以对响应进行处理

 <httpHandlers>      

<add verb="*" path="images/*.jpg" type="ImageHandler"/>       <add verb="*" path="code.jpg" type="ImageCode"/>    

</httpHandlers>

get和pos的区别:

1). get是从服务器上获取数据,post是向服务器传送数据。

2). get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。

3). 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。

4). get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。

5). get安全性非常低,post安全性较高。但是执行效率却比Post方法好。

Asp.net控件分类: 具有可视化界面的组件 .dll(可重用的代码块) 1)Html服务器控件(Html控件) 2)Web服务器控件(Web控件)

HTML服务器端控件: 凡是有runat="Server"属性的所有控件都必须放在具有runat="Server"属性的form中。

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

   <div>        

     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>        

<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="提交" />         <br />        

<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>  

   </div>    

</form>

服务器端处理事件: AutoPosBack:(属性设置为true,触发页面回发) IsPostBack:(属性设置为true,首次加载设置为false)

代码后置(CodeFile): .aspx文件中包含页面上的控件和布局, .aspx.cs文件中包含页面的程序代码,这种控件和布局与代码进行分离的技术称之为代码后置

系统对象: Context,Page,Response(响应),Request(请求),Server,Application,Session,Cache, 页面级对象:Context,Response,Request,Page,Server, 应用程序级对象:Application,Session,Catch

Session,Application,Cookie,ViewState的区别:

1)Session:保存在 服务器端,是在用户第一次访问网站的时候就实例化了。有多少个用户就有多少个实例。 应用范围:单个用户。生存期是用户持续请求时间再加上一段时间(一般是20分钟左右).Session中的信息保存在Web服务器内容中。

如:<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" cookieless="false" timeout="15"/>

2)Application:保存在 服务器端的,在IIS 启动你网站的时候,就实例化了。整个网站运行期间,只有一个实例,应用范围:所有用户。

3)Cookie:保存在 客户端的,应用范围:单个用户。

4)ViewStatie:保存在客户端,保存时间:一个Web页面是生命期,应用范围:单个用户。   其中Session有过期时间,Application永不过期。

页面的生命周期:1初始化,2实例化,3加载,4验证,5执行from中的控件事件,6呈现之前,7呈现, 8卸载,9销毁

Global.asax:全局应用程序类 Global()方法有哪些:

Application_Start

Application_End

Application_Error

Session_Start

Session_End

asp.net常用控件:

1.GridView

2.DetailsView

3.DataList

4.Repeater

5.ListView

用户控件:后缀名.ascx

验证控件: RequiredFieldValidator(非空) RengeValidator(范围) CompareValidator(比较) RegularExpressionValidator(正则表达式) CustomValidator(自定义) ValidationSummary(验证信息)

认证控件: Windows验证,Forms验证,Passport验证,自定义验证,

第三方控件(Ajax ControlToolkit)

原文地址:https://www.cnblogs.com/shanzzs/p/3423096.html