列不属于表。 [英] Column does not belong to table.

查看:246
本文介绍了列不属于表。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

on page_load



On page_load

DataTable dt = new DataTable();
DataRow row = dt.NewRow();
row["LoginName"] = userNames;
row["NavigateUrl"] = personUrl8;
dt.Rows.Add(row);
RepeaterLinks.DataSource = dt;
RepeaterLinks.DataBind();




我的aspx页面中的




in my aspx page

<asp:Repeater ID="RepeaterLinks" runat="server">
              <ItemTemplate >
      <asp:HyperLink ID="MyLinks" runat="server" Text='<%# DataBinder.Eval(Container, "LoginName") %>' NavigateUrl='<%# DataBinder.Eval(Container, "NavigateUrl") %>'></asp:HyperLink>

       </ItemTemplate>
          </asp:Repeater>





我得到列LoginName不属于该表?



I get column LoginName does not belong to the table?

推荐答案

请注意,您正在创建一个 new DataTable但是没有给它一个schema(layout),因此不存在任何列。



尝试类似:

Notice you are creating a new DataTable but have not given it a schema ("layout"), so no columns exist on it.

Try something like:
DataTable dt = new DataTable();

dt.Columns.Add("LoginName");
dt.Columns.Add("NavigateUrl");

DataRow row = dt.NewRow();

或从数据源填充数据表


将列添加到数据表 [以下两个额外的代码行 u>] =

Add the columns to the datatable [Below two additional code lines] =
DataTable dt = new DataTable();
dt.Columns.Add("LoginName", Type.GetType("System.String"));
dt.Columns.Add("NavigateUrl", Type.GetType("System.String"));
DataRow row = dt.NewRow();
row["LoginName"] = "pallavi";
row["NavigateUrl"] = "xyz";
dt.Rows.Add(row);

RepeaterLinks.DataSource = dt;
RepeaterLinks.DataBind();


请检查设计页面的代码,即aspx页面: -

Please check the code for design page i.e. aspx page :-
 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default4.aspx.cs" Inherits="Default4" %>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:repeater id="RepeaterLinks" runat="server" xmlns:asp="#unknown">
         <itemtemplate>
            <asp:hyperlink id="HyperLink2">
                runat="server" 
                NavigateUrl='<%# DataBinder.Eval(Container.DataItem, "NavigateUrl") %>'> <%# DataBinder.Eval(Container.DataItem, "LoginName") %></asp:hyperlink>
             <br />
        </itemtemplate>
        </asp:repeater>
    </div>
    </form>
</body>
</html>

< br $> b $ b

请检查代码背后的代码: -





Please check the below code behind code :-

protected void Page_Load(object sender, EventArgs e)
{
    DataTable dt = new DataTable();
    dt.Columns.Add("LoginName", Type.GetType("System.String"));
    dt.Columns.Add("NavigateUrl", Type.GetType("System.String"));
    DataRow row = dt.NewRow();
    row["LoginName"] = "LoginName";
    row["NavigateUrl"] = "Default.aspx";
    dt.Rows.Add(row);

    row = dt.NewRow();
    row["LoginName"] = "LoginName1";
    row["NavigateUrl"] = "Default2.aspx";
    dt.Rows.Add(row);

    RepeaterLinks.DataSource = dt;
    RepeaterLinks.DataBind();
}


这篇关于列不属于表。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆