显示ASPX网页中的对象数据列表

时间:2015-09-06 16:09:53

标签: c# asp.net .net

我正在尝试在网页中显示简单的对象数据列表。我只是在输出中显示标签而没有数据。请告诉我这段代码中可能存在的错误。

我收到以下输出

名称
年龄
城市

名称
年龄
城市

名称
年龄
城市

所需的输出

姓名Donna
40岁 纽约市

姓名Raj 10岁 纽约市

名称艺术
年龄16岁 纽约市

 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Web;
 using System.Web.UI;
 using System.Web.UI.WebControls;


     public partial class Customer : System.Web.UI.Page
     {

         public class myCustomer {
             public String Name {get;set;}
             public int Age { get; set; }
             public String City { get; set; }

             public myCustomer()
             {
             }

             public myCustomer(string _name, int _age, string _city)
             {
                 Name = _name;
                 Age = _age;
                 City = _city;
             }

     }

         List<myCustomer> customerList;

         protected void Page_Load(object sender, EventArgs e)
         {
             customerList = new List<myCustomer>();

             myCustomer co1 = new myCustomer { Name = "Donna", Age = 40, City = "New York" };
             myCustomer co2 = new myCustomer("Raj", 10, "New York");
             myCustomer co3 = new myCustomer("Art", 16, "New York");
             customerList.Add(co1);
             customerList.Add(co2);
             customerList.Add(co3);
             testDataGrid.DataSource = customerList;
             testDataGrid.DataBind();
         }        
 }


<%@ Page Language="C#" CodeFile="customer.aspx.cs" Inherits="Customer" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <asp:Repeater id="testDataGrid" runat="server" >

        <ItemTemplate>
            <table>
            <tr><td>Name</td><td><asp:TextBox  ID="Customer Name" Text= '<%# Eval("Name") %>' visible="true"/> </td></tr>
            <tr><td>Age</td><td><asp:TextBox ID="Age" Text= '<%# Eval("Age") %>'visible="true" /></td></tr>
            <tr><td>City</td><td><asp:TextBox  ID="City" Text='<%# Eval("City") %>' visible="true" /></td></tr>
                </table>
          </ItemTemplate>

    </asp:Repeater>
    </div>
    </form>
</body>
</html>

1 个答案:

答案 0 :(得分:2)

您的文本框需要一个runat =“server”

 <asp:TextBox id="tbName" runat="server" Text='<%#Eval("Name") %>'/>