c# – 几千个临时ASP.NET文件,ASP.NET网站调试速度极慢

我的团队负责维护遗留的ASP.NET Webforms Web应用程序项目.

我们目前正在使用Visual Studio 2010,该项目的目标是.NET Framework 4.0.

该项目有200多个ASCX控件和近900个RESX资源文件.它生成一个包含超过2000个文件的Temporary ASP.NET Files文件夹.

在这些临时文件中,有121个.cmdline文件,151个.compiled文件,64个.delete文件,121个.err文件(所有这些都是0个字节),121个.out文件,59个.pdb文件,121个.tmp文件,和246 .cs文件.

当我们开始调试项目时,它似乎需要永远加载(大约5分钟左右).

调试输出窗口显示许多类似于以下内容的行:

'w3wp.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\project\c8633237\88f5a808\App_Web_snat3rsu.dll'

这些线条看起来很慢,大约每秒一行,直到第一页加载为止.

一旦第一页加载到浏览器中,项目性能似乎合理,但到达那里似乎需要非常长的时间.

我正在寻找有关如何改善此项目加载时间的建议.

我担心项目有一些根本性的问题需要解决,因为它需要5分钟才能加载到调试器中似乎是不合理的.

解决方法

将您的加载时间(第一次编译)与您拥有的资源文件数相比是正常的.第一次加载它会预先编译东西,所以第二次运行它会更快.我会让你尝试实现这个网站上的内容.

https://web.archive.org/web/20171230155418/http://blog.lavablast.com/post/2010/12/01/Slash-your-ASPNET-compileload-time.aspx

相关文章

在项目中使用SharpZipLib压缩文件夹的时候,遇到如果目录较深,则压缩包中的文件夹同样比较深的问题。比...
项目需要,几十万张照片需要计算出每个照片的特征值(调用C++编写的DLL)。 业务流程:选择照片...
var array = new byte[4]; var i = Encoding.UTF8.GetBytes(100.ToString("x2"));//...
其实很简单,因为Combox的Item是一个K/V的object,那么就可以把它的items转换成IEnumerable<Dic...
把.net4.6安装包打包进安装程序。 关键脚本如下: 头部引用字符串对比库 !include "WordFunc....
项目需求(Winform)可以批量打印某个模板,经过百度和摸索,使用iTextSharp+ZXing.NetʿreeSp...