Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.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# 列“[Student Name]”不属于表_C#_Asp.net_Sql Server_Datatable - Fatal编程技术网

C# 列“[Student Name]”不属于表

C# 列“[Student Name]”不属于表,c#,asp.net,sql-server,datatable,C#,Asp.net,Sql Server,Datatable,我试图解决这个问题,但无法解决相同的列名称,但它不起作用。如何解决 private void GetData() { try { dt.Columns.Clear(); dt.Rows.Clear(); char[] alignment = new char[22]; int[] width = new int[22]; dt.Columns.Add("S.No", typeof(int)); al

我试图解决这个问题,但无法解决相同的列名称,但它不起作用。如何解决

private void GetData()
{
    try
    {
        dt.Columns.Clear();
        dt.Rows.Clear();

        char[] alignment = new char[22];
        int[] width = new int[22];
        dt.Columns.Add("S.No", typeof(int)); alignment[0] = 'C'; width[0] = 20;
        dt.Columns.Add("Ad.No", typeof(int)); alignment[1] = 'C'; width[1] = 20;
        dt.Columns.Add("Gr No", typeof(string)); alignment[2] = 'L'; width[2] = 60;
        //dt.Columns.Add("Father Name", typeof(string));
        dt.Columns.Add("Ad. Date", typeof(string)); alignment[3] = 'L'; width[3] = 30;
        dt.Columns.Add("[Student Name]", typeof(string)); alignment[4] = 'C'; width[0] = 20;
        dt.Columns.Add("Father Name", typeof(string)); alignment[5] = 'C'; width[0] = 20;

        string query = "";
        if (radioButtonClass.Checked)
        {
            query = " select  ROW_NUMBER() OVER(ORDER BY  Class,StudentName) AS [S.No], AdmissionNo as [Ad.No], EnrollmentNo as [Gr No],convert(varchar,AdmissionDate,103)as [Ad.Date],StudentName as [Student Name],FatherName as [Father Name],  " +
                   " from vu_StdAdmissionFeeInfo " +
                   " where AdmissionDate >='" + dtpform.Value + "' and AdmissionDate<='" + dtpTo.Value + "'" +
                   "" + (cmbClass.Text.Equals("--Select--") ? "" : " and Class='" + cmbClass.Text + "'   ") +
                   "" + (cmbsection.Text.Equals("--Select--") ? "" : " and Section='" + cmbsection.Text + "'   ") +
                   " order by Class,StudentName";
                        }
        DataTable dt2 = new DataTable();
        dt2 = utility.Get(query);
        //  dt2.Clear();
        foreach (DataRow item in dt2.Rows)
        {
            DataRow dr = dt.NewRow();
            dr["S.NO"] = item["S.NO"];
            dr["Ad.No"] = item["Ad.No"];
            dr["Gr No"] = item["Gr No"];
            dr["Ad. Date"] = item["Ad. Date"];
            dr["[Student Name]"] = item["[Student Name]"];
            dr["Father Name"] = item["Father Name"];

            dt.Rows.Add(dr);
        }

        dt2.Rows.Clear();
       // dt.Rows.Clear();
        if (dt.Rows.Count > 0)
        {
            dgvReport.DataSource = null;
            dgvReport.DataSource = dt;          
        }
        else
        {
            dgvReport.DataSource = null;
        }
    }
    }
}
删除以下代码中[学生姓名]的括号:

                foreach (DataRow item in dt2.Rows)
                {
                    DataRow dr = dt.NewRow();
                    dr["S.NO"] = item["S.NO"];
                    dr["Ad.No"] = item["Ad.No"];
                    dr["Gr No"] = item["Gr No"];
                    dr["Ad. Date"] = item["Ad. Date"];
                    dr["[Student Name]"] = item["[Student Name]"];
                    dr["Father Name"] = item["Father Name"];

                    dt.Rows.Add(dr);
                }
或此代码:

dt.Columns.Add("[Student Name]", typeof(string)); alignment[4] = 'C'; width[0] = 20;

删除列中的空格


列名不应包含空格-不应将SQL语句连接在一起-使用参数化查询来避免SQL注入当您在SQL中按[Student Name]命名返回列Student Name时,不使用括号。括号只是告诉SQL空格是名称的一部分。Hemal[Ad.Date]也有空格请避免在有用的编辑中回滚。在代码中放置断点,然后查看异常出现的位置。然后删除列标题中的空格。