【问题标题】:column does not belong to table?列不属于表?
【发布时间】:2016-06-02 16:45:59
【问题描述】:

在这里,我试图根据 tblUser 中也存在的用户名从 tblUser 检索用户的全名,并将其显示在文本框中。 但它显示错误列 'FullName' 不属于表,即使列 FullName 和 UserName 存在于表中。 使用的代码

 <asp:TextBox ID="txttfullname" CssClass="form-control" runat="server"></asp:TextBox>

代码背后

DataTable dc = ojc.GetUser(lblusername.Text);
if (dc.Rows.Count > 0)
 {
      txttfullname.Text = dt.Rows[0]["FullName"].ToString();
 }

public DataTable GetUser(string UserName)
{
    SqlConnection con = new SqlConnection(WebConfigurationManager.ConnectionStrings["myconnection"].ConnectionString);
    string sql = "select *from tblUser where UserName=@UserName";
    SqlCommand cmd = new SqlCommand(sql, con);
    cmd.Parameters.AddWithValue("@UserName", UserName);
    SqlDataAdapter da = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();
    da.Fill(dt);

    return dt;
}

【问题讨论】:

  • 有些事情并不像你想的那样,因为如果表 tblUser 中确实存在名为“FullName”的列,该代码应该不会失败。
  • 检查您的连接字符串。您可能在连接字符串中使用了错误的数据库。
  • txttfullname.Text = dt.Rows[0]["FullName"].ToString();用 dc 替换 dt 应该可以正常工作。

标签: c# asp.net


【解决方案1】:

这部分是对的还是错字?

DataTable dc = ojc.GetUser(lblusername.Text);
if (dc.Rows.Count > 0)
 {
      txttfullname.Text = dt.Rows[0]["FullName"].ToString();
 }

获取数据表 dc 并与 dt 绑定?

另一个问题

lblusername.Textdc 是否有值,你调试和检查了吗?

【讨论】:

  • @Ruban.j 谢谢先生。dc 和 dt 有问题
猜你喜欢
  • 1970-01-01
  • 2014-01-24
  • 2021-01-10
  • 2017-12-22
  • 2014-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多