我会保持简单。
我有以下模型:
public class Person
{
public int Id { get; set; }
public string FullName { get; set; }
}
我在 ..\Shared\DisplayTemplates\Person.cshtml 中为这个模型创建了这个局部视图
@model BillSplitter.Classes.Person
<b>@Model.FullName</b>
从某种意义上说,以下代码效果很好:
@Html.DisplayFor(model => model.PaidBy) //PaidBy is type of Person
这是我要创建的扩展:
public static IHtmlString DisplayPersons(this HtmlHelper helper, IEnumerable<Person> model)
{
string htmlString = "";
foreach (Person p in model)
string += helper.DisplayFor(p); //PROBLEM!
return new HtmlString(htmlString);
}
问题是助手没有公开该DisplayFor
功能。
我该怎么做才能HtmlString
从这个扩展中的部分视图中获取?