0

我有一个网格视图,它将动态数据加载到项目模板标签中,最终目标是对于加载到网格视图中的每条消息,都有一个名为“收件人”的列,其中包含收件人的数量。我想要一个工具提示来显示该消息的每个收件人的姓名列表。我想为工具提示获取的数据位于另一个列表中的列表中。我正在尝试使用以下数据绑定标签:

<asp:Label ID="lblRecipients" runat="server" Text="recipients" ToolTip='<%# Eval("Recipients.fullName") %>'></asp:Label>

Recipients 是此对象中的列表:

[DataContract]
public class Message
{
    [DataMember]
    public string MsgId { get; set; }
    [DataMember]
    public string Title { get; set; }
    [DataMember]
    public string Description { get; set; }
    [DataMember]
    public string MsgSize { get; set; }
    [DataMember]
    public string DateRecorded { get; set; }
    [DataMember]
    public string FileName { get; set; }
    [DataMember]
    public string ActiveDate { get; set; }
    [DataMember]
    public decimal RecordTime { get; set; }
    [DataMember]
    public long Filelength { get; set; }
    [DataMember]
    public string Person { get; set; }
    [DataMember]
    public List<Person> Recipients { get; set; }
    [DataMember]
    public int RecipientCount { get; set; }
}

调试时,我在 Eval 上收到以下消息:

HttpException was unhandled by user code.

DataBinding: 'Share.Service.Person[]' does not contain a property with the name 'FullName'.

即使当我运行我的 WCF 测试客户端时,我看到此时它正在使用收件人姓名填充每个 Person 对象中的 FullName 属性。目前我不太确定如何应对这一挑战。

任何帮助,将不胜感激。

4

1 回答 1

0

我不确定您是否可以像这样绑定数据,消息是正确的,收件人中没有带有“FullName”的属性,(Person [])

你有一个格式化功能怎么样

protected string GetFullNames(List<Person> persons) {
    // do whatever you want and return the formatted string
}

然后将工具提示绑定到该函数输出?

<asp:Label ID="lblRecipients" runat="server" Text="recipients" ToolTip='<%= GetFullNames(Recipients) %>'></asp:Label>
于 2013-09-29T23:57:11.193 回答