通过传递输入参数动态渲染局部视图

时间:2014-06-25 16:44:34

标签: asp.net-mvc-3 asp.net-mvc-4 partial-views asp.net-mvc-partialview

创建了部分视图_AvailableOptions.cshtml和View CustomProducts.cshtml。 现在基于Model,CustomProducts.cshtml的值,我们可能会或可能不会加载/显示_AvailableOptions.cshtml。如果加载,那么部分视图必须基于输入的ProductID进行渲染,以动态显示类似的选项

if(ProductId != 0)
   @Html.Partial("_AvailableOptions", SimilarProducts)

如何从服务器获取SimilarProducts模型。输入参数是ProductId以加载模型。

抱歉我的英文。

1 个答案:

答案 0 :(得分:0)

您需要使用视图模型来存储SimilarProducts。

所以在你的控制器中你会有

if(ProductId != 0)
   {
      ViewModel.SimilarProducts = //Some service method that loads products
   }

然后在您的视图中,您只需执行

if(ProductId != 0)
   @Html.Partial("_AvailableOptions", model.SimilarProducts)