Измените свою функцию на Func<T, HelperResult>
, затем передайте @<li>@item</li>
РЕДАКТИРОВАТЬ : Например:
public static IHtmlString Do<T>(this HtmlHelper html, IEnumerable<T> items, Func<T, HelperResult> template) {
return html.Raw(String.Join("\n", items.Select(o => template(o).ToString())));
}
В Razor:
@Html.Do(new []{"Beer","Fries"}, @<li>@item</li>)