我有一个Report类。报告数据使用转发器控件呈现。有一个部门列表(字符串的通用列表)以逗号分隔显示。我们可以使用Eval将它作为逗号分隔列表在转发器中吗?如果我们不能使用Eval,那么在转发器中还有其他语法吗?
类
public class Report
{
public int ReportID { get; set; }
public string Title { get; set; }
public string Recipients { get; set; }
public string Frequency { get; set; }
public List<string> DepartmentList { get; set; }
}
ASP.NET标记
<asp:Repeater ID="rptReports" runat="server">
<HeaderTemplate>
<div>
</div>
</HeaderTemplate>
<ItemTemplate>
<div class="repeaterIdentifier">
<div class="reportTitle">
<%# Eval("Title") +":" %>
</div>
<div class="reportFrequency">
<%# " Frequency - "+ Eval("Frequency") %>
</div>
</div>
<div class="reportContent">
<div class="repeaterLine">
<%# Eval("Recipients")%></div>
</div>
</ItemTemplate>
</asp:Repeater>
答案 0 :(得分:4)
您可以使用
<%#String.Join(",",((Report)Container.DataItem).DepartmentList)%>
答案 1 :(得分:3)
试试这个
<ItemTemplate>
<%# String.Join((List<string>)Eval("DepartmentList")).ToArray()) %>
</ItemTemplate>
注意:未经过测试的代码
答案 2 :(得分:1)
在您的班级Report
中,您可能需要添加额外的属性
public string DepartmentListCommas
{
get
{
return string.Join(", ", DepartmentList);
}
}