这几周跟着于海涛老师进入了.NET编程世界,领略到了ASP.NET的精髓。要说起ASP.NET的发展史,那要追溯到HTML了,因为它功能简单,无法从用户接收信息并自动进行更新,而不需要开发人员重新编写。怎样才能赋予站点如此的反应能力呢?如何提供面向用户的“个性化服务”呢?
有了需求,就有了语言竞争的动力,短短几年,聪明的人类已经开发出好多种技术。Microsoft公司作为IT界的领先者,也参与了这场WEB的变革中,它的秘密武器就是——ASP,它因技术简单,容易上手,备受程序猿儿的亲睐。在此基础上,经历了1.0、2.0、3.0的变革,在.NET Framework的创建后,又使它技术升级为——ASP.NET。
主角引出来,下面是我的学习总结,总体来说,很喜欢老师的讲课风格,先理论学习后实战做Demo。只因和老师用的开发工具不同,VS2005和VS2013差距还是很大的,我也没有因为视频而改变自己的开发工具。正是因为这个原因,让我每个DEMO完成的都可以说是“印象深刻”!!让我深深感受到:学习!离不开网络!
本专辑系统的讲解了ASP.NET编程的各个方面,包括了ASP.NET的基础知识,ASP.NET和IIS架构,HTML语言,C#基础,HTML控件和Web服务器控件,Web表单验证控件,在C#VB.NET中使用ASP.NET对象,数据库基础与数据连接对象ADO.NET、数据库编程,高级应用,ASP.NET应用程序的设置与安全、程序设计实例等。
认识一个新的事物,总是想看看它有没有我已经认识的一面,视频中很大的篇幅都在介绍ASP.NET的控件。在制作牛腩新闻发布系统的时候,这个视频中提到的控件,我们都用到了。不得不说,当时也是迷迷糊糊的就用了,还不知道它是什么,就已经会用了。现在回头看这些控件的理论知识的学习,想想控件必备属性,方法,事件。就觉得挺简单的。
关于控件这部分,验证控件是之前VB中没有接触到的,我的理解,因为验证控件的属性设置,可以减少我们前台很多的判断功能的代码,比如判断是不是为空啊,是不是数字啊等等。这一点是ASP.NET的巨大进步了。关于列表控件,在支持数据库后台的WEB应用程序中,为了给用户展示详尽的数据信息,列表控件是必不可少的。gridview,它的强大在于能简单实现分页、排序、丰富的格式样式以及易于操作的布局。对于repeater,以上gridview的大部分功能其实都能实现,只不过实现起来相当复杂些,但我们只要掌握它,那么gridview面对repeater而言,就会变得毫无优势。
1、session & application
Session 是服务器端的状态保存机制,每个用户端均有独立的空间(以浏览器运行个体来赋与唯一的SessionID值)。 Application 是服务器端的状态保存机制,但应用程序所有的用户端共用同一份状态数据。Application对象和Session对象都可在服务器端保存数据或对象,使用方法和常用属性、事件、方法也基本相同。但Application对象中保存的信息是为所有来访的客户端浏览器共享的,而Session对象保存的数据则是仅为特定的来访者使用的。
例如,在河南的A用户和在河北的B用户同时访问某一服务器,若A修改了Application对象中存放的信息,B用户在刷新页面后就会看到修改后的内容;但若A修改了Session对象中存放的数据,B用户是感觉不到的。此时只有A可以看到和使用这些数据。也就是说Session对象中存放的是专用信息。
2、response & request
WEB服务器在收到了客户端的HTTP请求后,会根据每次请求分别创建两个对象:代表请求的request对象,代表响应的response对象。对于二者的区分可以根据意思出发。
相对应的,在页面跳转方面,二者有各自的方法,在开发当中也是经常会使用到的,为了进一步看出二者的区别,我用ER画图工具画了两个图。。如下:
response.redirect():向客户端输出一个数据,是告诉客户端要跳向指定的界面,客户端浏览器的网址发生改变。变为指定的页面***.aspx。
request.forward():实现的是服务器内部的转发,不会让客户端浏览器的地址发生改变。
web服务提供了两种访问方法,即HTTP-GET和HTTP-POST。还学会了使用代理来调用服务。使用SOAP协议还可以用于在分布式计算环境中进行交换信息。
在学习设计模式的时候学到了配置文件,所以当看到这一章的时候,很是亲切。复习了一下页配置设置,应用程序设置。还学会了customErrors设置。配置文件的方便之处在于:以纯文本格式储存,使用XML编写,如果需要更改,无需重新启动服务器。
在ASP.NET理论+实践的学习过程中,深刻体会到了没有网络,例子根本敲不下去的囧境。在过程中,多问几个为什么,可以学到更多有意思的知识,这点是王潇峥师傅告诉我的。还有,建议向我一样的小白,学习之初先拿本书看看,摸清思路。再来看视频,就会有所准备,产生共鸣。在我解决问题的时候,搜索到了好几个关于前端开发的学习网站,挺好的。在这里分享给大家(都是免费的课程哦~):