求助,C#GridView无法显示

规定昵称 2025-03-03 20:35:13

     后台

           SqlConnection key = new SqlConnection (ConfigurationManager.ConnectionStrings["blogConnectionString"].ConnectionString);
            key.Open ();
            SqlDataAdapter username = new SqlDataAdapter ("select * from UserRegistry where name = '" + "张三" + "'and password = '" + "zhangsan" + "'", key);
            DataSet user = new DataSet ();
            username.Fill (user, "user");
            key.Close ();
            Session["user"] = user;

前台:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Width="470px">
        </asp:GridView>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:blogConnectionString %>" SelectCommand="SELECT * FROM [post] WHERE ([publisherID] = @publisherID)">
            <SelectParameters>
                <asp:SessionParameter Name="publisherID" SessionField="(DataSet)Sessoin.Tables[&quot;user&quot;].Rows[0][0]" Type="Int32" />
            </SelectParameters>
        </asp:SqlDataSource>
        <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:blogConnectionString %>" SelectCommand="SELECT * FROM [reply] WHERE ([publisherID] = @publisherID)">
            <SelectParameters>
                <asp:SessionParameter Name="publisherID" SessionField="(DataSet)Session.Tables[&quot;user&quot;].Rows[0][2]" Type="Int32" />
            </SelectParameters>
        </asp:SqlDataSource>
    
    </div>
    </form>
</body>
</html>

数据源绑定上了,测试查询也能查到,代码也没报错,各位大佬能解释一下么,本人是个菜鸡,虐的轻一点

...全文
625 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
山东蓝鸟贵薪 04-02 20:53
  • 打赏
  • 举报
回复
       using (OleDbConnection conn = new OleDbConnection(connStr))
        {
            try
            {
                conn.Close(); //关闭数据库
                conn.Open(); // 打开连接


                using (OleDbCommand cmd = new OleDbCommand(query_find_all, conn))
                {
                    //cmd.ExecuteNonQuery();

                    using (OleDbDataAdapter da = new OleDbDataAdapter(cmd))
                    {
                        DataTable dt = new DataTable(); // 创建一个DataTable来存储数据
                        da.Fill(dt); // 用查询结果填充DataTable

                        dataGridView1_student_info.AutoGenerateColumns = true; // 确保列自动生成,以便正确显示数据表结构
                        dataGridView1_student_info.DataSource = dt; // 将DataTable设置为DataGridView的数据源

                    }

                    dataGridView1_student_info.Columns["学号"].Width = 140;   // 第 1 列占30%  学号
                    dataGridView1_student_info.Columns["班级"].Width = 90;  // 第 2 列占20%  班级
                    dataGridView1_student_info.Columns["姓名"].Width = 100;   // 第 3 列占50%  姓名


                    if (dataGridView1_student_info.Rows.Count == 0)
                    {
                        MessageBox.Show("没有记录可以查看");
                        return;
                    }
                }

}

山东蓝鸟贵薪 04-02 20:51
  • 打赏
  • 举报
回复
        using (OleDbConnection conn = new OleDbConnection(connStr))
        {
            try
            {
                conn.Close(); //关闭数据库
                conn.Open(); // 打开连接


                using (OleDbCommand cmd = new OleDbCommand(query_find_all, conn))
                {
                    //cmd.ExecuteNonQuery();

                    using (OleDbDataAdapter da = new OleDbDataAdapter(cmd))
                    {
                        DataTable dt = new DataTable(); // 创建一个DataTable来存储数据
                        da.Fill(dt); // 用查询结果填充DataTable

                        dataGridView1_student_info.AutoGenerateColumns = true; // 确保列自动生成,以便正确显示数据表结构
                        dataGridView1_student_info.DataSource = dt; // 将DataTable设置为DataGridView的数据源

                    }

                   
                    //学号,班级,
                    dataGridView1_student_info.Columns["学号"].Width = 140;   // 第 1 列占30%  学号
                    dataGridView1_student_info.Columns["班级"].Width = 90;  // 第 2 列占20%  班级
                    if (dataGridView1_student_info.Rows.Count == 0)
                    {
                        MessageBox.Show("没有记录可以查看");
                        return;
                    }
                }

给你一个 参考代码

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧