1
在我的输入窗体上,我让用户选择一个状态。状态列表存储在数据库中(因为我们还不支持每个状态)。此列表更改很少。使用RenderAction渲染用户控件
所以我想用RenderAction
来渲染控件,只是因为我不想将每个ViewModel的状态列表传递给视图。这个行动的结果是一个下降。
由于这是一个输入控件,它需要一个名称。所以从我的主视图我打电话的RenderAction如下:
@Html.RenderAction("GetStates", "Data", new { controlName = "states" });
传递controlName
感觉不对。我觉得我误用RenderAction
来创建用户控件,而@Html.Partial
会更合适,另一方面,我不想将状态列表传递给@Html.Partial
,因为该信息与呈现方面的问题更相关。
问题我应该如上所述坚持使用RenderAction并传递controlName吗?还是有更好的解决方案?
这就是意图,使用RenderAction可以让我使用开箱即用的Cache属性。 – 2012-07-24 22:03:32
嗯,我会看看。最后我听说你不能使用Cache Attr和部分视图。如在,它不会缓存 – 2012-07-24 22:06:28
我的不好,[OutputCache(持续时间= 3600)]不缓存attr – 2012-07-24 22:20:38