Кроме того факта, что вы пропускаете ;
после нулевого макета, я не вижу, что вам мешает это сделать ( невозможно воспроизвести , как мне нравится говорить):
@{
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>