我有一个字符串数组,我希望它以逗号分隔的形式返回。要用逗号分隔的字符串数组
@Html.DisplayFor(m => name.studentName) <span>, </span>}
我使用这种方式,但最后一个字符串也以逗号结尾。想知道如何避免这种情况?
我有一个字符串数组,我希望它以逗号分隔的形式返回。要用逗号分隔的字符串数组
@Html.DisplayFor(m => name.studentName) <span>, </span>}
我使用这种方式,但最后一个字符串也以逗号结尾。想知道如何避免这种情况?
我假设你有学生集合在你的模型中的每个拥有你想要显示studentName
属性:
public IEnumerable<Student> Students { get; set; }
而且你的视图中,你通过这个集合循环和单独显示每个学生的名字。
,而不是循环,你可以做以下的现在:
@Html.Raw(
string.Join(
"<span>,<span>",
Model.Students.Select(x => Html.Encode(x.studentName))
)
)
,甚至更好,外化这个逻辑到一个可重用的自定义HTML帮助:
public static class HtmlExtensions
{
public static IHtmlString FormatStudentNames(this HtmlHelper htmlHelper, IEnumerable<Student> students)
{
return new HtmlString(
string.Join(
"<span>,<span>",
students.Select(x => Html.Encode(x.studentName))
)
);
}
}
,然后里面你的观点简单地调用这个帮手:
@Html.FormatStudentNames(Model.Students)
你不再需要写任何foreach或其他任何东西你正在写作的作品。