ASP.net MVC:为什么AreaRegistration.RegisterAllAreas()这么慢?

Pre*_*eli 6 c# asp.net-mvc performance

我有一个小的ASP.net MVC应用程序,大约有10个视图和2个控制器,它需要永远(不是永远但在30-50秒之间)加载一个站点.

我做了一些分析,发现超过50%的时间花在了我的Global.asax.cs文件中的以下行:

AreaRegistration.RegisterAllAreas();
Run Code Online (Sandbox Code Playgroud)

可能是什么原因以及如何改善绩效?

Ant*_*haw 11

你在使用MVC领域吗?如果没有,只需删除或注释该行.我以前注意到了这一点,但没有真正的解释.

  • 它只是在网站的初始打击速度慢?这可能是由应用程序池预热引起的.一旦应用程序被击中一次,它会继续快速吗?一旦你投入生产,你可以为你的网站寻找一个保持活跃的服务.遗憾的是,对于.net应用程序,没有真正好的方法.微软在.NET 4中添加了一项功能,允许你在应用程序池上进行某种设置以防止它关闭,我只是想不起他们此时所说的内容,我会搜索并查看如果我能为你解决这个问题. (2认同)