列不属于表。 [英] Column does not belong to table.
本文介绍了列不属于表。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
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 anew
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屋!
查看全文