在我的输入表单上,我让用户选择一个状态。状态列表存储在数据库中(因为我们还不支持每个状态)。此列表很少更改。
所以我想用它RenderAction
来呈现控件,仅仅是因为我不想将每个 ViewModel 的状态列表传递给视图。此操作的结果是下拉菜单。
由于这是一个输入控件,它需要有一个名称。因此,从我的主要观点来看,我将 RenderAction 称为如下:
@Html.RenderAction("GetStates", "Data", new { controlName = "states" });
路过controlName
感觉不对。我觉得我在滥用RenderAction
创建用户控件,并且@Html.Partial
会更合适,另一方面,我不想将状态列表传递给,@Html.Partial
因为该信息与演示问题更相关。
问题我应该坚持使用 RenderAction 并如上所述传递 controlName 吗?还是有更好的解决方案?