2016-05-21 5 views
0

хорошо, я сделал все от меня, чтобы решить эту проблему. Я пытаюсь распечатать данные из моей базы данных, используя grid view в asp.net, используя коды C#. может кто-нибудь сказать мне, что не так, и как улучшить мои коды. Спасибо.Gridview не привязывающий и показывающий данные из моей базы данных

using (MySqlConnection con = new MySqlConnection(ConfigurationManager.ConnectionStrings["DBCon"].ConnectionString)) 
     { 
      constructor var = new constructor(); 
      con.Open(); 
      string sql = "SELECT first_name,last_name,username,contact_number,address,email FROM user_tbl WHERE user_type='2'"; 
      MySqlCommand cmd = new MySqlCommand(sql, con); 
      MySqlDataReader reader1 = cmd.ExecuteReader(); 
      reader1.Close(); 

      try 
      {     
        MySqlDataAdapter da = new MySqlDataAdapter(cmd); 
        DataSet ds = new DataSet(); 
        GridView1.DataSource = ds; 
        GridView1.DataBind(); 
      } 

      catch (Exception ex) 
      { 
       lblresult.Text = "ERROR>>" + ex.Message + "!"; 
      } 

      finally 
      { 
       con.Close(); 
       sql = null; 

      } 

ответ

1

Вы должны заполнить DataSet с данными, как это:

MySqlDataAdapter da = new MySqlDataAdapter(cmd); 
DataSet ds = new DataSet(); 
da.Fill(ds, "TableName"); 
GridView1.DataSource = ds.Tables["TableName"]; 
GridView1.DataBind(); 
+0

спасибо, сэр. он работал как магия. хе-хе. Большое спасибо. :) – Alphi

+0

сэр, я отправил вам личное сообщение на facebook. я был бы рад узнать ваши мысли о моем сообщении. еще раз спасибо. :) – Alphi

0

Вы назначая пустой DataSet к вашему DataSource, не заполняя результаты ваших DataReader в DataSet/DataTable.

using (MySqlConnection con = new MySqlConnection("")) 
{ 
    con.Open(); 
    string sql = "SELECT first_name,last_name,username,contact_number,address,email FROM user_tbl WHERE user_type='2'"; 
    MySqlCommand cmd = new MySqlCommand(sql, con); 

    try 
    { 
     DataTable dt = new DataTable(); 
     using (MySqlDataReader reader1 = cmd.ExecuteReader()) 
     { 
      dt.Load(reader1); 
     } 

     GridView1.DataSource = dt ; 
     GridView1.DataBind(); 
    } 

    catch (Exception ex) 
    { 
     lblresult.Text = "ERROR>>" + ex.Message + "!"; 
    } 

    finally 
    { 
     con.Close(); 
     sql = null; 

    } 
} 
+0

спасибо за ваш ответ, но им все еще получаю ту же ошибку, – Alphi

+0

Одно небольшое исправление, извините за это. Проверьте обновленный ответ. – user3185569

Смежные вопросы