MVC页面在第一个视图上变慢

时间:2011-04-11 12:25:26

标签: asp.net-mvc asp.net-mvc-3

我有一个简单的应用程序,MVC页面没有HTML,图像或除HTML和Razor C#代码之外的任何东西(不多)。在我看来,当页面首次加载时,它们需要很长时间,之后它们会更快。第一次请求页面时,MVC3是否会进行一些编译。

罗伯特

2 个答案:

答案 0 :(得分:3)

第一次加载Razor视图时,它会被解析并编译成C#类(默认情况下,转换为WebViewPage或WebViewPage的派生类型),视图实际上被编译为该类的Execute方法。类似的东西实际上也发生在旧的WebForms页面上。

MVC管道中还有其他因素会降低第一次调用时的性能,例如application_start(如果它也是对应用程序的第一个请求),以及其他一些具有反射,依赖性解析和其他只会发生的操作的操作在第一次通话时(它们被缓存用于后续通话),.

答案 1 :(得分:2)