将列表传递给<%#Eval(“”)%>使用C#

时间:2010-06-27 11:04:05

标签: c# asp.net data-binding

好的,我已经搜索过,似乎无法找到在哪里找到我的问题的答案。

我要做的是转换从sql表中检索的通用字符串列表,如下所示:

List<string> UserList = new List<string>() { "User One", "User Two" };

并尝试使用&lt;%#Eval(“UserList”)将其输出到web.aspx页面:

<asp:Label id="userList" text='<%# Eval("userList")%>' />

当然上面给出了'System.Collections.Generic.List`1 [System.String]'作为结果。

修改
我要做的是将UserList输出作为工作图片协作的用户列表。最终输出应该如下所示:

<img src="picutre" /><br>
<asp:label id="Artist1" text="Artist Name From Asp.net Membership Profile" />
<asp:label id="Artist2" text="Artist Name From Asp.net Membership Profile" />

2 个答案:

答案 0 :(得分:6)

您可能想尝试使用string.Join()。

<asp:Label id="userList"
           text='<%# string.Join( " ", ((List<string>)Eval("userList")).ToArray() ) %>'

答案 1 :(得分:3)

目前尚不清楚最终结果是什么。 如果要在标签中将列表输出为CSV,可以使用String.Join()方法:

http://msdn.microsoft.com/en-us/library/57a79xd0.aspx

像这样:

<%# String.Join(", ", ((List<String>)Eval("UserList")).ToArray()) %>