public partial class booktest : System.Web.UI.Page
{
    SqlConnection sqlcon;
    string strCon = "Data Source=(local);Database=db_04;Uid=sa;Pwd=sa";
    protected void Page_Load(object sender, EventArgs e)
    {
        string sqlstr = "select top 3* from tb_EmpID select top 3a.*,b.UserID from tb_Employee as a inner join tb_EmpID as b on a.UserID=b.UserID";
        sqlcon = new SqlConnection(strCon);
        SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
        DataSet myds = new DataSet();
        sqlcon.Open();
        myda.Fill(myds);
        myds.Tables[0].TableName = "tb_EmpID";
        myds.Tables[1].TableName = "tb_Employee";
        DataColumn Parent = myds.Tables["tb_EmpID"].Columns["UserID"];
        DataColumn Child = myds.Tables["tb_Employee"].Columns["UserID"];
        DataRelation tableRelation = new DataRelation("tableRelation", Parent, Child, false);
        myds.Relations.Add(tableRelation);
        DataList1.DataSource = myds.Tables["tb_EmpID"].DefaultView;
        DataList1.DataBind();
        sqlcon.Close();
    }
}
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="booktest.aspx.cs" Inherits="booktest" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <table>
            <tr>
                <asp:DataList ID="DataList1" runat="server">
                    <ItemTemplate>
                        <table>
                            <tr>
                                <td>
                                <%#DataBinder.Eval(Container.DataItem,"UserID") %>
                                </td>
                            </tr>
                            <tr>
                                <td>
                                    <asp:DataList ID="DataList2" runat="server" DataSource='<%#((System.Data.DataRowView)Container.DataItem).CreateChildView("tableRelation") %>' DataKeyField="UserID">
                                        <HeaderTemplate>
                                            <table>
                                                <tr>
                                                    <td><asp:Label ID="Lable1" runat="server" Text="ID:"></asp:Label></td>
                                                    <td><asp:Label ID="Lable2" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"UserID") %>'></asp:Label></td>
                                                    <td><asp:Label ID="Label1" runat="server" Text="密码:"></asp:Label></td>
                                                    <td><asp:Label ID="labName" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"UserLoginName") %>'></asp:Label></td>
                                                </tr>
                                            </table>
                                        </HeaderTemplate>
                                    </asp:DataList>
                                </td>
                            </tr>
                        </table>
                    </ItemTemplate>
                </asp:DataList>
            </tr>
        </table>
    </div>
    </form>
</body>
</html>
为什么里面的DataList 中的Label 没办法显示啊
还有各位大哥 小弟实在没分 在此虚心求教 

解决方案 »

  1.   

    DataTable dt1 = new DataTable();
    DataTable dt2 = new DataTable();
    ds.Tables.Add(dt1);   
    ds.Tables.Add(dt2);   
    DataRelation dsdr = new DataRelation("Position", ds.Tables[0].Columns["id"], ds.Tables[1].Columns["id"]);   
    ds.Relations.Add(dsdr); string sqlstr = "select top 3 * from tb_EmpID; select top 3 a.*,b.UserID from tb_Employee as a inner join tb_EmpID as b on a.UserID=b.UserID";
    sqlcon = new SqlConnection(strCon);
      
      

  2.   

    string sqlstr = "select top 3* from tb_EmpID select top 3a.*,b.UserID from tb_Employee as a inner join tb_EmpID as b on a.UserID=b.UserID";
          你这查出来的是几个表啊,分隔一下吧。
      

  3.   


     <asp:DataList runat="server" Id="dlCategories" GridLines="Both" Bordercolor="black" cellpadding="3"
                    cellspacing="0" Headerstyle-BackColor="#DDDDDD" Headerstyle-Forecolor="#777777" Headerstyle-Font-Name="Arial"
                    Headerstyle-Font-Size="14" Headerstyle-Font-Bold="true" Font-Name="Arial" Font-Bold="true"
                    Font-Italic="true" Font-Size="11" ForeColor="Red" RepeatColumns="1">
                    <HeaderTemplate>
                        省市 & 市区
                    </HeaderTemplate>
                    <ItemTemplate>
                        <%# DataBinder.Eval(Container, "DataItem.province") %>
                        <br>
                        <asp:DataList runat="server" Id="ChildDataList" GridLines="None" Bordercolor="black" cellpadding="3" cellspacing="0" Headerstyle-BackColor="#8080C0" Headerstyle-Font-Name="Arial" Headerstyle-Font-Size="8" Font-Name="Arial" Font-Size="8" datasource='<%# DataBinder.Eval(Container, "DataItem.myrelation") %>' RepeatColumns="5">
                            <ItemTemplate>
                                &nbsp; &nbsp;
                                <%# DataBinder.Eval(Container, "DataItem.city") %>
                            </ItemTemplate>
                        </asp:DataList>
                    </ItemTemplate>
                </asp:DataList> string constring=System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];
                
                DataSet ds=new DataSet();
                string sql1="select * from province";
                SqlDataAdapter    sda1 =new SqlDataAdapter(sql1,constring);
                sda1.Fill(ds,"province");            string sql2="select * from city";
                SqlDataAdapter    sda2 =new SqlDataAdapter(sql2,constring);
                sda2.Fill(ds,"city");
                
                ds.Relations.Add("myrelation", ds.Tables["province"].Columns["provinceID"], ds.Tables["city"].Columns["father"]);
                dlCategories.DataSource=ds.Tables["province"].DefaultView;
                dlCategories.DataBind();
    一个示例 你参考下
      

  4.   

      <asp:DataList ID="DataList2" runat="server" DataSource='<%#((System.Data.DataRowView)Container.DataItem).CreateChildView("tableRelation") %>' DataKeyField="UserID">
                                            <HeaderTemplate>                                            <table>
                                                    <tr>
                                                        <td><asp:Label ID="Lable1" runat="server" Text="ID:"></asp:Label></td>
                                                        <td><asp:Label ID="Lable2" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"UserID") %>'></asp:Label></td>
                                                        <td><asp:Label ID="Label1" runat="server" Text="密码:"></asp:Label></td>
                                                        <td><asp:Label ID="labName" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"UserLoginName") %>'></asp:Label></td>
                                                    </tr>
                                                </table>
                                            </HeaderTemplate>
    模板用错了                                    </asp:DataList>
      

  5.   

    嵌套的datalist数据绑定出错,无法获取数据,所以才不能显示,老大,给分