ASP.NET技巧之提高应用程序性能浅析

开发 后端
ASP.NET技巧之提高应用程序性能向你讲述在编程文件选择和程序提交表单时的优化操作,使得应用程序性能提升。

◆ASP.NET技巧之提高ASP.NET应用程序性能应用程序性能:即使不使用Visual Studio .NET进行编程,使用代码支持文件也有利于提高应用程序的性能

如何提高ASP.NET应用程序性能呢?在Web应用程序、Web服务或Web控件等所有的ASP.NET Web工程中,Visual Studio .NET都使用代码支持文件。代码支持文件使工程具有更好的组织、模块性,更适合多人组成的开发团队。另外,它还会带来性能的提高。

代码支持文件的内容被编译成一个组合文件中的类,一般是一个DLL文件,有时也可以是EXE文件。该文件驻留在应用程序的组合体高速缓冲区中,在应用程序启动时,可以立即得到它。

如果代码是包含在﹤SCRIPT﹥标记中或ASPX文件代码中,它仍然会被编译成一个Web页类。在这种情况下,每当该网页在应用程序对话中第一次加载时,都需要重新进行编译,被编译的类就会驻留在内存中。每当计算机启动、IIS停止、重新启动或者源代码、配置文件改变时,该文件必须重新编译。尽管不大,但这样引起的性能损耗也是相当可观的。

◆ASP.NET技巧之提高ASP.NET应用程序性能应用程序性能:尽量减少表单回送

每当点击Web网页上的Button、LinkButton或ImageButton控件时,表单就会被发送到服务器上。如果控件的AutoPostBack属性被设置为true,如果CheckBox、CheckBoxList等控件的状态被改变后,也会使表单会发送回服务器。

每次当表单被发送回服务器,就会被重新加载,启动Page_Load事件,执行Page_Load事件处理程序中的所有代码。把网页的初始化代码放在这里是最合适不过的了。我们经常会希望在每次加载网页时执行一些代码,而希望只有在网页第一次加载时执行另一些代码,甚至希望一些代码在除首次加载外的每次加载时执行。

可以利用IsPostBack特性来完成这一功能。在网页第一次加载时,该属性的值是false。如果网页因回送而被重新加载,IsPostBack属性的值就会被设置为true。通过测试,可以在任意时候执行指定的代码。下面是相关的C#代码:

  1. protected void Page_Load(Object sender, EventArgs e)   
  2. {   
  3. // 网页每次加载时,执行的一些操作   
  4. if (!IsPostBack)   
  5. {   
  6. // 网页第一次加载时执行的操作   
  7. }   
  8. else   
  9. {   
  10. // 回送时执行的操作   
  11. }   
  12.  
  13. // 网页每次加载时执行的操作   
  14. }  

我们希望尽量不引起回送(每次回送都会要求服务器进行一系列的操作),即使引起回送后。也希望能够执行尽量少的操作。大规模、浪费时间的操作(例如数据库查找)尤其应当避免,因为它们能够延长应用程序的响应时间。

ASP.NET技巧之提高ASP.NET应用程序性能就向你介绍到这里,希望对你有所帮助。

【编辑推荐】

  1. ASP.NET数据库连接实例浅析
  2. ASP.NET数据库连接池设置浅析
  3. 如何学习ASP.NET之九步宝典
  4. ASP.NET技巧之数据采集程序浅析
  5. ASP.NET技巧之命名设置

责任编辑:仲衡 来源: joycode
相关推荐

2011-07-07 09:03:12

ASP.NET

2009-07-20 16:08:04

ASP.NET应用程序

2009-07-24 16:40:14

ASP.NET软件开发

2009-07-29 10:52:09

数据采集程序ASP.NET技巧

2009-07-22 17:32:40

ASP.NET应用程序

2009-07-21 15:02:19

ASP.NET应用程序

2009-07-23 13:26:21

2009-07-27 16:09:50

2009-07-29 17:01:13

2009-08-05 10:16:54

部署ASP.NET应用

2009-07-20 16:03:14

ASP.NET 2.0

2009-07-29 17:20:18

应用程序异常

2009-07-27 15:19:54

2009-07-29 10:30:53

Web应用程序ASP.NET

2009-08-05 10:17:55

ASP.NET TheASP.NET开发技巧

2009-07-29 17:21:10

2009-07-23 14:25:03

ASP.NET 2.0

2009-07-30 16:02:53

2009-02-25 14:51:05

应用程序设计ASP.NET.NET

2022-07-04 17:32:12

DevOpsAIOps
点赞
收藏

51CTO技术栈公众号