Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正在尝试将数据绑定到GridView,但无法绑定_C#_Asp.net_Datagridview - Fatal编程技术网

C# 正在尝试将数据绑定到GridView,但无法绑定

C# 正在尝试将数据绑定到GridView,但无法绑定,c#,asp.net,datagridview,C#,Asp.net,Datagridview,我正在尝试将数据绑定到gridView。基本上,我想将特定的persons记录绑定到gridview,所以为此,我通过查询获取数据。我还设置了AutoGenerateColumns=True。我的代码执行得很好,但没有异常,也没有错误。请检查并指导。多谢各位 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.W

我正在尝试将数据绑定到gridView。基本上,我想将特定的persons记录绑定到gridview,所以为此,我通过查询获取数据。我还设置了
AutoGenerateColumns=True
。我的代码执行得很好,但没有异常,也没有错误。请检查并指导。多谢各位

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
using System.Data;

public partial class ViewRegisteredDonors : System.Web.UI.Page
{
    protected void Button1_Click(object sender, EventArgs e)
    {
        SqlConnection conec = new SqlConnection(ConfigurationManager.ConnectionStrings["BloodDonorRegistrationConnectionString"].ConnectionString);

        string query;
        query = "select D_FirstName,D_LastName,D_BloodGroup,D_City,D_Phone from Donor where D_City= @BG AND D_City=@cc";
        SqlCommand cmd = new SqlCommand(query, conec);
        cmd.Parameters.AddWithValue("@BG", dropbownBlood.SelectedItem.Text);
        cmd.Parameters.AddWithValue("cc", DropDownListCity.SelectedItem.Text);
        conec.Open();
        cmd.CommandType = CommandType.Text;
        //cmd.CommandType = CommandType.StoredProcedure;
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        DataSet d = new DataSet();
        da.Fill(d);
        GridView1.DataSource = d;
        GridView1.DataBind();
    }
}

检查您的参数名@cc@是否丢失,因此您的数据集可能为空

cmd.Parameters.AddWithValue("cc", DropDownListCity.SelectedItem.Text);
应该是

cmd.Parameters.AddWithValue("@cc", DropDownListCity.SelectedItem.Text);

您是否使用了调试器,如果使用了调试器,则当您跨过此行
da.Fill(d)后,
d
的值是多少单击调试器中的放大镜或QuickWatch…,是否可以看到数据。。。?您还需要将此行
GridView1.DataSource=d
更改为
GridView1.DataSource=d.Tables[0]
您填写的是数据集而不是数据表,数据表是数据集的子集..@MethodMan我回滚了您对这个问题的编辑,因为您将代码更改为无法编译的内容。编辑问题中的代码时请小心,以免更改代码的含义。@mason我认为我并没有更改任何内容,然后又一次,这可能是一个胖手指的情况sorry@MethodMan您的编辑是专门用来更改它的。不能仅仅为了提高可读性而将字符串拆分为多行。除非使用字符串文字,否则C#中的字符串不能跨越多行,因此您的编辑更改了代码的含义。。谢谢你的更新