To define a method within a razor (cshtml) file. Very useful for recursive rendering of data trees.
@model ListOfItemsViewModel
@if (Model.Items.Any())
{
<ul>
@foreach(var item in Model.Items)
{
@RenderItem(item);
}
</ul>
}
@helper RenderItem(Item item)
{
@MvcHtmlString.Create(string.Format"<li>{0}", item.Name)
if (item.Children.Any())
{
@MvcHtmlString.Create("<ul>")
foreach(var childItem in itemChildren)
{
@RenderItem(childItem);
}
@MvcHtmlString.Create("</ul>")
}
@MvcHtmlString.Create("</li>");
}
aa0e9bd5-c448-4778-abc9-ab5a31820d63|0|.0