上一页 1 ··· 97 98 99 100 101 102 103 104 105 ··· 107 下一页
摘要: 小心不要给每个请求分配过多内存,因为这样垃圾回收器将必须更频繁地进行更多的工作。另外,不要让不必要的指针指向对象,因为它们将使对象保持活动状态,并且应尽量避免含 Finalize 方法的对象,因为它们在后面会导致更多的工作。特别是在 Finalize 调用中永远不要释放资源,因为资源在被垃圾回收器回收之前可能一直消耗着内存。最后这个问题经常会对 Web 服务器环境的性能造成毁灭性的打击,因为在等待 Finalize 运行时,很容易耗尽某个特定的资源。   有关垃圾回收器和自动内存管理的更多信息,请参见自动内存管理。 阅读全文
posted @ 2004-10-25 00:14 leonardleonard 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 每当发生对目录的第一次请求时都会执行批编译。如果目录中的页面没有被分析并编译,此功能会成批分析并编译目录中的所有页面,以便更好地利用磁盘和内存。如果这需要很长时间,则将快速分析并编译单个页面,以便请求能被处理。此功能带给 ASP.NET 性能上的好处,因为它将许多页面编译为单个程序集。从已加载的程序集访问一页比每页加载新的程序集要快。 批编译的缺点在于:如果服务器接收到许多对尚未编译的页面的请求,那么当 Web 服务器分析并编译它们时,性能可能较差。为解决这个问题,可以执行预批编译。为此,只需在应用程序激活之前向它请求一个页面,无论哪页均可。然后,当用户首次访问您的站点时,页面及其程序集将已被 阅读全文
posted @ 2004-10-25 00:14 leonardleonard 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 因为异常大大地降低性能,所以您不应该将它们用作控制正常程序流程的方式。如果有可能检测到代码中可能导致异常的状态,请执行这种操作。不要在处理该状态之前捕获异常本身。常见的方案包括:检查 null,分配给将分析为数字值的 String 一个值,或在应用数学运算前检查特定值。下面的示例演示可能导致异常的代码以及测试是否存在某种状态的代码。两者产生相同的结果。 [C#]// Consider changing this...try {result = 100 / num;}catch (Exception e) {result = 0;}// ...to this.if (num != 0)resul 阅读全文
posted @ 2004-10-25 00:13 leonardleonard 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 该方法提供非常有效的缓冲和连接服务。但是,如果您正在执行广泛的连接,请使用多个 Response.Write 调用。下面示例中显示的技术比用对 Response.Write 方法的单个调用连接字符串更快。 [C#]Response.Write("a");Response.Write(myString);Response.Write("b");Response.Write(myObj.ToString());Response.Write("c");Response.Write(myString2);Response.Write("d");[Visual Basic]Response.Write( 阅读全文
posted @ 2004-10-25 00:12 leonardleonard 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 禁用 Web 窗体页的缓冲会导致大量的性能开销。 阅读全文
posted @ 2004-10-25 00:12 leonardleonard 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 自动视图状态管理是服务器控件的功能,该功能使服务器控件可以在往返过程上重新填充它们的属性值(您不需要编写任何代码)。但是,因为服务器控件的视图状态在隐藏的窗体字段中往返于服务器,所以该功能确实会对性能产生影响。您应该知道在哪些情况下视图状态会有所帮助,在哪些情况下它影响页的性能。例如,如果您将服务器控件绑定到每个往返过程上的数据,则将用从数据绑定操作获得的新值替换保存的视图状态。在这种情况下,禁用视图状态可以节省处理时间。   默认情况下,为所有服务器控件启用视图状态。若要禁用视图状态,请将控件的EnableViewState 属性设置为 false,如下面的 DataGrid 服务器控件示例 阅读全文
posted @ 2004-10-25 00:10 leonardleonard 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 虽然您很可能希望尽量多地使用 Web 窗体页框架的那些节省时间和代码的功能,但在某些情况下却不宜使用 ASP.NET 服务器控件和回发事件处理。 通常,只有在检索或存储数据时,您才需要启动到服务器的往返过程。多数数据操作可在这些往返过程间的客户端上进行。例如,从 HTML 窗体验证用户输入经常可在数据提交到服务器之前在客户端进行。通常,如果不需要将信息传递到服务器以将其存储在数据库中,那么您不应该编写导致往返过程的代码。   如果您开发自定义服务器控件,请考虑让它们为支持 ECMAScript 的浏览器呈现客户端代码。通过以这种方式使用服务器控件,您可以显著地减少信息被不必要的发送到 Web 阅读全文
posted @ 2004-10-25 00:07 leonardleonard 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 并不是所有的应用程序或页都需要针对于具体用户的会话状态,您应该对任何不需要会话状态的应用程序或页禁用会话状态。  若要禁用页的会话状态,请将 @ Page 指令中的 EnableSessionState 属性设置为 false。例如,%@ Page EnableSessionState="false" %。   注意 如果页需要访问会话变量,但不打算创建或修改它们,则将 @ Page 指令中的 EnableSessionState 属性设置为 ReadOnly。还可以禁用 XML Web services 方法的会话状态。有关更多信息,请参见使用 ASP.NET 和 XML Web ser 阅读全文
posted @ 2004-10-25 00:06 leonardleonard 阅读(121) 评论(0) 推荐(0) 编辑
摘要: ASP.NET 为存储应用程序的会话数据提供了三种不同的方法:进程内会话状态、作为 Windows 服务的进程外会话状态和 SQL Server 数据库中的进程外会话状态。每种方法都有自己的优点,但进程内会话状态是迄今为止速度最快的解决方案。如果只在会话状态中存储少量易失数据,则建议您使用进程内提供程序。进程外解决方案主要用于跨多个处理器或多个计算机缩放应用程序,或者用于服务器或进程重新启动时不能丢失数据的情况。有关更多信息,请参见 ASP.NET 状态管理。 阅读全文
posted @ 2004-10-25 00:06 leonardleonard 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 作者:未知 请作者速与本人联系1,不要在VS里直接复制ASPX文件,因为复制的时候,两个文件会使用同一个类文件,要复制的话,应该建空文件,然后复制页面和代码2,发在项目完工的时候,要想得到一个干净的,仅有必需文件的项目,可以用复制项目的方法,注意的时,包含在项目的文档将会被编译及复制,没有包含的文档不会被复制,复制前,需要建立一个目标空站点,复制的方法应该选文件共享3.VS.net中每一个文件的生成方法都有编译,内容,嵌入三种,对于CS文件,其生成方法应该为编译,对于ASPX文件,应该为内容,对于像想嵌入到DLL中的资源,如BMP图像,ICO图像,字符串等,应设为嵌入其他文件,均设为内容4.D 阅读全文
posted @ 2004-10-25 00:01 leonardleonard 阅读(130) 评论(0) 推荐(0) 编辑
上一页 1 ··· 97 98 99 100 101 102 103 104 105 ··· 107 下一页