这是我们目前正在向我们的视图吐出一些HTML的方式。
foreach (var reportGroup in managedReportGroup.CustomerTags)
{ %>
<%= reportGroup.Name %>
<%
}
我能做到这样吗? (这对我不起作用)
Action<ManagedReportGroups> handlesReportGroup = delegate(ManagedReportGroups managedReportGroup)
{
foreach (var reportGroup in managedReportGroup.CustomerTags)
{
Html.Encode(reportGroup.Name);
}
};
原因是要减少aligator括号并清理我的代码。
谢谢,
麦克
答案 0 :(得分:0)
为什么不使用PartialViews?
foreach (var reportGroup in managedReportGroup.CustomerTags)
{ %>
<% Html.RenderPartial("NamePartialView", reportGroup.Name) %>
}
然后您的局部视图可以呈现名称。
当您将reportGroup传递给PartialView时,这会更有效,然后让partialView编写所有HTML,或者在更原子级别调用每个渲染的其他PartialView。
答案 1 :(得分:0)
如果将其移动到部分视图,则仍需要在部分视图中执行循环。
你可以创建自定义的Html扩展方法,如果你真的死了你的第一个例子。
或者,如果您的主要目标是减少“鳄鱼括号”,那么如果您这样做,可以将其减少到两个:
<%
foreach (var reportGroup in managedReportGroup.CustomerTags)
{
Response.Write(reportGroup.Name)
}
%>
您可能还会考虑Spark View Engine