ListView数据绑定行为

时间:2010-01-18 17:45:09

标签: asp.net data-binding listview

我认为这是listview数据绑定的一个奇怪问题。

我在我的代码隐藏中调用一个名为ItemHtml()的受保护方法 - 如下所示。

    <ItemTemplate>
        <div class="itemWrapper">
            <%# ItemHtml() %>
        </div>
    </ItemTemplate>

该方法定义如下。

protected string ItemHtml()
{
    string itemHtml =
        StateHeaderIfNewState()
           + ActivityOwnerIfNew()
           + ActivityCategoryIfNew()
           + ActivityDescriptionHtml()
           + TaskDescriptionHtml()
           + RecordDetailsHtml();   
    Trace.Write("DEBUG", itemHtml);
    return itemHtml;
}

跟踪显示如下所示的“itemHtml”(我已从代码中删除了实际的html以确保它不仅仅是无效的html): 弗吉尼亚州,活动所有者姓名,类别,活动,任务,详细信息

但是,页面源缺少前两个值(以“类别”开头)。

我是否误解了listview数据绑定的一些内容?跟踪怎么可能有一个值,但源有另一个值?

1 个答案:

答案 0 :(得分:2)

您的“查看来源”点击正在生成一个新的http请求,导致对服务器的新调用,该服务现在有一个新的响应(可能是由于“IfNew”暗示的逻辑)。在我看来,你的itemHtml变量不可能同时具有你描述的两个不同的值。

如果我是正确的,那么由于多个请求,您应该有多条跟踪。