Asp.Net本质论(后台)学习总结
************1 项目讲解、数据库详细设计、大框架、技术细节等************
1.动软三层项目代码自动生成器:
2.工厂模式 进行解耦:
3.如果一个类库是使用使用工具自动生成的,如果想保住每次自动生成的的时候,其中自定义的的部分不被覆盖掉,要将自定义的部分写入部分类中!
******************Asp.Net本质论******************
1.appendFormat类似sqlParameter的参数占位,进行字符串拼接,向客户端输出
3.典型的客户端向数据库添加数据的方式:
3.页面只要不是使用表单(且为post方式)提交的,都是get方式提交,如:第一次打开页面、使用超链接的方式打开页面等
5.表单隐藏域可以储存数据,并且将数据随同页面保存,可以保存页面的状态数值(页面request、response是无状态的)
6.web网站与web应用程序的区别:
6.请求编译流程图:
7.典型三层构架web应用程序(项目可借鉴):
8.动软自动代码生成器:
9.文件的上传:
13.服务器端绝对路径与相对路径:
Context.request.MapPath(“/ImageUp”) //绝对路径,/是指根目录
Context.request.MapPath(“../ImageUp”) //相对路径,..是当前目录的上一级目录,
15.aspx ashx页面使用情形:
16.aspx 前台:如果有表单的页面就要进行get和post判断(使用 isPostBack判断),以防止,用户只是第一次打开页面、或刷新页面动作,而不是提交表单!
①如果前台页面是:第一次打开、刷新、点击超链接,后台都是按get请求处理
②如果前台页面是:点击表单提交,那么后台都按post请求处理
16A.后台是按照前台页面是否有隐藏域,来判断是否是有post提交
17.服务器 控件)(runat=server),要有服务器解析成前端控件,返回给客户端
18. 服务器端server对象
19. viewstate的机制、原理(本质上还是隐藏域):
20.cookie的本质:
21. aspx前台页面继承于相关的后台页面类,执行的时候,先执行相关的后台页面,再执行对应的前台页面,à最终生成html,返回给浏览器
13.session是服务器端数据保存机制(在内存的保存时间默认20分钟),隐藏域、viewstate、cookie都是客户端保存机制:
15.只要一个表单,添加runat=”server”可以以,post的方式提交给服务器
16 . 一个页面关闭后,重新开启同一个页面时,该页面的sessionId也会改变:
17.session的方便之处,可以使得一个客户数据在整个网站的不同页面之间进行进行传递!但是ashx页面要使用session必需要实现sessionState.IRequiressessionState接口(进行标记的)
16.Ajax其实就是最大便利了用户:在进行页面其他操作时,不收上一个操作结果的影响,页面无刷新
注:Ajax不是整个页面提交数据的,而是提交数据和局部刷新的,所以反应速度快
18.网站发布:网站项目应该先发布,然后部署
19.一般在项目中不会使用自定义委托Delegate,会使用系统委托,比如:func<>//lambda函数、有返回值
Action<>//动作委托、无返回值
事件event相当于一个委托的实例,但是只能定义在一个类中,在本类中使用,相对比较安全,但是delegate相当于一个类,其他类可以使用。
20.应用程序之间的通信
①Web程序的通信一般使用基于一定tcp等公共协议,如:WebService、WCF、WebApi (以上也是基于Socket的封装)
②Socket是即时通信,比如udp、飞秋等,可以定制协议
21.Global
***************线程&socket**************
1.后台线程随着主线程的结束而结束
2.可以传递参数的线程:
3.一般不会直接使用Delegate,而是使用Func、Action系统类型(委托)
5.线程锁:多线程操作中,每个线程是分时操作的,
6.什么时候使用线程池:
注:线程池中的线程都是后台线程
7.Socket概念: