1

我有一个使用 Repeater 控件显示的 Report 对象列表。在 Report 类中有一个 RecipientsList,它是一个字符串列表。我在转发器中有以下代码,以将列表呈现为逗号分隔的列表。

代码工作正常。目前它正在 div 内创建一个字符串(其中有 class="repeaterLine")

我需要每个字符串位于单独的 div 元素中。应该有与收件人数量一样多的 div 元素。是否可以在ASP.Net 标记中实现它(仅)?

中继器内的标记

 <div class="repeaterLine">
   <%# String.Join(", ",((ServicesSupportSite.UI.Report)Container.DataItem).RecipientsList)%>
 </div>

报告类

public class Report
{
    public int ReportID { get; set; }
    public string Title { get; set; }
    public List<string> RecipientsList { get; set; }
}

参考

  1. https://softwareengineering.stackexchange.com/questions/159211/scenarios-where-linq-is-handy
4

1 回答 1

2

您可以使用 LINQ.Select()将 RecipientsList 中的字符串包装在<div>标签中,如下所示:

 <div class="repeaterLine">
   <%# String.Join(", ",((ServicesSupportSite.UI.Report)Container.DataItem).RecipientsList.Select(x => "<div>" + x + "</div>")%>
 </div>
于 2012-08-09T12:26:15.420 回答