我有一个MVC视图,带有部分视图递归调用,显示分层数据。
完整的树通常包括大约500个项目。
数据全部包含在模型中,模型是一个简单的记录类 - 除了自动属性之外没有任何内容。
在IIS中,这可以正常工作。
然而,在Cassini / WebDev(Visual Studio的内置Web服务器)中,此页面运行速度非常慢,而且经常超时。
有点挖掘表明,这是由于每次呼叫Html.RenderPartial
大约需要200毫秒(或1/5秒)。实际的部分视图似乎需要不到一毫秒左右。
任何人都有任何想法为什么这么慢?
为什么IIS和Cassini之间会有所不同? IIS应用程序指向我的开发目录;他们运行完全相同的代码,构建和配置。
答案 0 :(得分:3)
我认为这可能与视图解析路径的缓存有关。 The article here解释了我所指的问题。
如果传递视图的完整路径,您是否注意到相同的行为,例如:
RenderPartial("~/Views/MyView.ascx")
善,
丹