[英]MVC4 Razor template like
你好,我想一个简单的问题,
我有一个像cshtml:
<div id="box">
@if (model.View == "item1")
{
<div id="item1">
...
</div>
}
else
{
<div id="item2">
...
</div>
}
<div id="itemDescription">
...
</div>
</div>
我通过模型传递参数以根据参数显示某些内容,因为在两种情况下文档的其余部分都是相同的。
有没有更好的方法来实现这一目标?
谢谢!
如果这两个div
的数量不多,你的方法就没问题了 。 否则,创建两个部分视图以帮助保持整洁:
@if (model.View == "item1")
{
@Html.RenderPartial("Item1");
}
else
{
@Html.RenderPartial("Item2");
}
并不是的; 这是一种非常好的做事方式。 如果div id始终与model.View
的值匹配,则可以将其缩短为:
<div id="box">
<div id="@(model.View)">
...
</div>
<div id="itemDescription">
...
</div>
</div>
否则,你的方法很好。 根据von v的评论,如果包含的标记是冗长的(或者您需要在多个位置重复逻辑),您可能希望查看部分视图:
http://www.asp.net/mvc/videos/mvc-2/how-do-i/how-do-i-work-with-data-in-aspnet-mvc-partial-views
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.