【问题标题】:DataTable and ASP.NET RepeaterDataTable 和 ASP.NET 中继器
【发布时间】:2013-01-27 03:04:44
【问题描述】:

我正在将 DataTable 绑定到转发器。但是,当我运行我的 aspx 页面时,它不会评估 Eval 语句并将它们显示在页面上

<<%# Eval("Name").ToString() %> Posted by: <<%# Eval("UserName").ToString() %>
<<%# Eval("Name").ToString() %> Posted by: <<%# Eval("UserName").ToString() %>
<<%# Eval("Name").ToString() %> Posted by: <<%# Eval("UserName").ToString() %>

它也将其分解为 3 行。这也不是我所期望的。我认为它通常会显示为跨度

我已取出 .ToString 以检查是否是导致问题的原因。但事实并非如此。

下面是我的中继器

<asp:Repeater ID="First" runat="server">
        <ItemTemplate>
            <div class="ItemDiv">
                <span class="ItemLeft"></span>
                <span class="ItemCentre">
                    <asp:Label ID="Name" runat="server" Text='<<%# Eval("Name").ToString() %>'></asp:Label>
                </span>
                <span class="ItemRight">
                    <asp:Label ID="UserName" runat="server" Text='<<%# Eval("UserName").ToString() %>'></asp:Label>
                </span>
            </div>
        </ItemTemplate>
    </asp:Repeater>

绑定代码如下:

public void dataLoad()
{
    DataTable Data = loadData(1,1,1);

    if (Data.Rows.Count < 10)
    {
        // Only populate the data from datatable
        First.DataSource = Data;
        First.DataBind();
        Second.Visible = false;
        noData.Visible = true;
    }

我已经更改了上面示例中的一些名称

在调试信息中,我可以看到我的 DataTable 使用了正确的列名,并且这些与我的 eval 语句匹配。

我知道我以一种相当奇怪的方式创建了这个,根据我的阅读和在线研究,使用表格而不是 Divs/或 Spans 更常见。所以我知道这可能是它的核心问题。

我不明白为什么会有所不同。

【问题讨论】:

    标签: c# asp.net data-binding datatable repeater


    【解决方案1】:

    从 eval 语句中删除 &lt;&lt;。应该是:

    <div class="ItemDiv">
        <span class="ItemLeft"></span>
        <span class="ItemCentre">
            <asp:Label ID="Name" runat="server" Text='<%# Eval("Name").ToString() %>'></asp:Label>
        </span>
        <span class="ItemRight">
            <asp:Label ID="UserName" runat="server" Text='<%# Eval("UserName").ToString() %>'></asp:Label>
        </span>
    </div>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-13
      • 2019-02-26
      • 1970-01-01
      • 1970-01-01
      • 2010-12-06
      • 1970-01-01
      • 2016-09-01
      • 1970-01-01
      相关资源
      最近更新 更多