Как отобразить первичный ключ в выпадающем списке сразу после вставки записи в базу данных c #? - PullRequest
0 голосов
/ 06 июня 2018

Я разрабатываю приложение формы Windows для вставки значений сетки данных в sqldatabase. Я хотел бы знать, как отобразить первичный ключ вставленного значения (GRN_No) в выпадающем списке сразу после вставки. Я пытался это сделать для отображения GRN_No при загрузке формыа также после команды вставки.

void fillGRNcombo()
    {
        DynamicConnection con = new DynamicConnection();
        con.mysqlconnection();
        con.sqlquery("select GRN_No from TBL_GRN");
        con.dataread();
        while (con.datareader.Read())
        {
            cmbGRN.Items.Add((int)con.datareader["GRN_No"]);
        }
    }

Но после диссертации значения дублируются в выпадающем списке, например (1,2,1,2,3). Как решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 06 июня 2018

Просто очистите ComboBox перед чтением DataReader

  cmbGRN.Items.Clear();    
  while (con.datareader.Read())
  {
       cmbGRN.Items.Add((int)con.datareader["GRN_No"]);
  }
0 голосов
/ 06 июня 2018

В вашем случае в вашем поле со списком сохраняются более ранние данные, поэтому вы можете видеть повторяющиеся записи в вашем поле со списком.

Вместо того, чтобы снова и снова добавлять одни и те же данные, просто очистите поле со списком перед добавлением нового основногоключи или новые записи к нему.

  cmbGRN.Items.Clear();
  while (con.datareader.Read())
        {
            cmbGRN.Items.Add((int)con.datareader["GRN_No"]);
        }
...