asp net教程详解(4)

asp net教程详解(4)

ID:20521824

大小:119.52 KB

页数:10页

时间:2018-10-13

asp net教程详解(4)_第1页
asp net教程详解(4)_第2页
asp net教程详解(4)_第3页
asp net教程详解(4)_第4页
asp net教程详解(4)_第5页
资源描述:

《asp net教程详解(4)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、WebForm1如果每次输出网页都直接用HttpHandler的话太痛苦了,所以一般生成html的时候都直接创建aspx(Web窗体,WebForm)。WebForm分为两个文件aspx和aspx.cs,aspx是页面模板,是页面描述文件,就是html的内容,和aspx结合的更好,不用像一开始那样程序员自己去填充模板,控件都是定义在aspx中,内联的JavaScript、CSS也是写在aspx中的,,服务端的C#代码是定义在aspx.cs中。aspx控件页面长相,cs控制程序逻辑,这种“前aspx后cs”的方式就被称

2、为CodeBehind。aspx就是模板引擎,不需要再去寻找第三方的模板引擎。WebForm2cs可以调用aspx中的控件,aspx中也可以访问cs中定义的字段、函数,还可以编写复杂的C#代码,for等所有C#代码都可以写在aspx中(不推荐)前面<%=UserName%><%SayHello();%><%if(UserName=="aaa"){UserName="bbb";}%>后面在当前位置输出表达式的值的时候使用<%=UserName%>,不要丢了=,相当于在当前位置调用Response.Write(UserN

3、ame)使用的函数、代码相当于在这个位置调用函数、执行代码。注意aspx中调用cs的成员级别必须是protected或者public,不能是private的。<%%>中的代码是运行在服务器端的,是C#语法,其他部分是运行在浏览器端的,是html、JavaScript语法。aspx、cs、dll之间的关系(*)在WebForm的页面中执行下面的代码Response.Write(this.GetType()+"
");Response.Write(this.GetType().Assembly.Location+

4、"
");Response.Write(this.GetType().BaseType+"
");Response.Write(this.GetType().BaseType.Assembly.Location+"
");发现当前执行页面的类名是ASP.webform1_aspx这样的类名,父类才是ASPNETTest1.WebForm1使用Reflector打开这个临时dll,反编译这两个类,发现ASPNETTest1.WebForm1是在VS中编写的aspx.cs类,而ASP.webfor

5、m1_aspx则是一个继承自ASPNETTest1.WebForm1的子类,ASP.webform1_aspx代码是根据aspx内容动态生成的构建网页内容的类。综上,aspx最终也会生成一个类,这个类是继承自aspx.cs中的类。查看反编译以后的代码,可以看到就是编译生成了普通的.Net代码。因为aspx生成的代码是cs类的子类,所以就明白了为什么“aspx中调用cs的成员级别必须是protected或者public,不能是private的。”Page类成员1、Request、Response、Server属性:对c

6、ontext.Request、context.Response、context.Server的简化调用。2、AppRelativeVirtualPath属性:获得页面相对于应用根路径的路径,比如~/Default2.aspx3、FindControl(ctrlId),根据控件的id找到控件。一般情况下直接在代码中写控件id引用控件就可以了,但是对于有些场合:使用ListView等控件的模板、编写自定义控件等则需要使用FindControl来引用控件,FindControl返回值是Control,一般需要显式转换为相应

7、的控件:TextBoxtxtBox=(TextBox)FindControl("TextBox1");txtBox.Text="aaa";4、IsPostBack、Session5、ResolveClientUrl(url)将虚拟路径转换为客户端访问时的路径,比如ResolveClientUrl("~/a/b.aspx")结果是a/b.aspx,这通常在ListView等控件的模板中输出HTML使用。基本就是对VirtualPathUtitlity.ToAbsolute简化调用。考虑当前页面的相对路径,生成的路径短。

8、最常用。6、ResolveUrl(url)将虚拟路径转换为相对于网站根目录的路径,比如ResolveUrl("~/a/b.aspx")的结果是/WebSite4/a/b.aspx。不考虑当前页面,VirtualPathUtitlity.ToAbsolute直接转换为一个全路径。ASP.Net服务端基本控件介绍ASP.Net服务端控件是ASP.N

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。