c# - DataTable 和 ASP.NET Repeater

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

我正在将 DataTable 绑定(bind)到转发器。但是,当我运行我的 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>

绑定(bind)代码如下:

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 更常见。所以我知道这可能是它的核心问题。

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

最佳答案

删除 <<从你的评估陈述。应该是:

<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>

关于c# - DataTable 和 ASP.NET Repeater,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14821858/

相关文章:

winforms - DevExpress GridView 查询 - DataSource 属性设置为 DataTable 但显示不正确的列数

c# - 使用隔离存储时未处理 SecurityException

c# - 具有 Oracle 托管驱动程序将 NUMBER(10) 映射到 long 的 Entity Framework 不起作用

asp.net - 使用 POST 方法时 ASMX 服务返回 "500 error"

c# - 是否可以为带有用户控件或母版页的许多页面创建基本事件处理程序?

c# - 使用 WPF 和 C# 进行嵌套数据绑定(bind)

c# - 使用 ServiceStack 3.9.56 找不到命名空间 ServiceStack.ServiceClient.Web

c# - 给图片添加框C#

asp.net - 这是哪种易受攻击的扫描?

wpf - 我可以从其他模型继承 MVVM 模型吗?