【问题标题】:cannot display sql data inside gridview无法在gridview中显示sql数据
【发布时间】:2011-11-03 03:51:48
【问题描述】:

我正在尝试以下方法以在 gridview 中显示 sql 表数据

try
    {
        SqlConnection xconn = new SqlConnection();
        xconn.ConnectionString = @"Data Source=servername;Integrated Security=True;Initial Catalog=master";
        xconn.Open();

        string s = "select * from tablename";
        SqlCommand ycmd = new SqlCommand(s,xconn);
        SqlDataReader dr = ycmd.ExecuteReader();

        gridview.DataSource = dr;
        gridview.DataBind();
    }
    catch (Exception)
    {
        lblresult.Text = "Cannot connect to SQL";
    }

我不断收到异常。我做错了什么?

【问题讨论】:

  • 您收到的异常是什么?
  • 我认为您不能将数据读取器绑定到网格。
  • 哪一行抛出异常,异常是什么?
  • @Brettski - 您可以绑定到 DataReader()。此页面上有一个示例(类似于此代码):support.microsoft.com/kb/307860 搜索 ExecuteReader() - 大约是一半。
  • 我在您的连接字符串中看到 [Initial Catalog=master]。您的表在系统 [master] 数据库中吗?只是确认。跟踪时,异常是否会在 .Open() 行或更下方抛出?

标签: c# .net sql ado.net


【解决方案1】:

更改 Catch 部分
catch (Exception ex)
{
    lblresult.Text = ex.Message &"\n" & ex.StackTrace;
}

现在您将获得有效的异常描述。用它来自己修复它...... :)

如果没有,请在您的帖子中发布来自lblresult.Text 的详细异常信息。

【讨论】:

    【解决方案2】:

    您必须将请求结果填写在可用作 itemsource 的变量中。

    GridView.ItemsSource = ContainerClass.AllItems;
    

    ContainerClass 是一个帮助类,包含一个 IEnumerable AllItems 变量。 gridview可以这样显示值!!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-02
      • 2012-08-31
      • 2020-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多