2

我有一个 MVC 视图,它带有显示分层数据的部分视图递归调用。

完整的树通常包括大约 500 个项目。

数据都包含在模型中,模型是一个微不足道的记录类——除了自动属性之外什么都没有。

在 IIS 中,这工作正常。

然而,在 Cassini/WebDev(Visual Studio 的内置 Web 服务器)中,此页面运行缓慢且经常超时。

一点点挖掘表明这是由于每次调用Html.RenderPartial大约需要 200 毫秒(或 1/5 秒)。实际的局部视图似乎需要不到一毫秒左右的时间。

任何人都知道为什么这这么慢?

为什么 IIS 和 Cassini 会有所不同?IIS 应用程序指向我的开发目录;他们运行完全相同的代码、构建和配置。

4

1 回答 1

3

我认为这可能与视图解析路径的缓存有关。此处的文章解释了我所指的问题。

如果您传递视图的完整路径,您是否注意到相同的行为,例如:

 RenderPartial("~/Views/MyView.ascx")

善良,

于 2009-12-16T15:54:42.010 回答