我有一个强类型的局部视图,它接收一个枚举:
@model MyEnum
@{
Layout = null
}
@if (Model == MyEnum.Value1) {
//... dosomething
}
@if (Model == MyEnum.Value2) {
//... do another thing
}
我无法像这样正确地调用渲染部分
@{ Html.RenderPartial("MyPartialView", MyEnum.Value2); }
有什么想法吗?
答案 0 :(得分:3)
除了在null布局赋值后丢失;
这个事实之外,我无法看到是什么阻止你这样做(无法按照我喜欢的方式重新编写):
@{
Layout = null;
}
这是一个完整的工作示例,说明这应该有效。
型号:
public enum MyEnum
{
Value1,
Value2
}
控制器:
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
}
Index.cshtml
查看:
<div>
@{ Html.RenderPartial("MyPartialView", MyEnum.Value2); }
</div>
MyPartialView.cshtml
部分:
@model MyEnum
@{
Layout = null;
}
@if (Model == MyEnum.Value1) {
<div>Value 1 was selected</div>
}
@if (Model == MyEnum.Value2)
{
<div>Value 2 was selected</div>
}
作为结果HTML中的预期输出:
<div>Value 2 was selected</div>