Member 12361495 Ответов: 1

Как фильтровать datatable с условием, где int ID равен null


У меня есть gridview:
GridViewName.DataSource = table;

табличное значение:
string myConnection = ConfigurationManager.ConnectionStrings["vizitka"].ToString();
string Query_sel = MySqlString;
MySqlConnection conDataBase = new MySqlConnection(myConnection);
MySqlCommand cmdDataBase_sel = new MySqlCommand(Query_sel, conDataBase);
  try
  {
     MySqlDataAdapter sda = new MySqlDataAdapter();
     sda.SelectCommand = cmdDataBase_sel;
     DataTable dbdataset = new DataTable();
     sda.Fill(dbdataset);
     BindingSource bSource = new BindingSource();
     bSource.DataSource = dbdataset;
     TableName.DataSource = bSource;
     sda.Update(dbdataset);
   }
     catch (Exception ex)
     {
        MessageBox.Show(ex.Message);
     }

Я получаю ценности:
https://i.stack.imgur.com/G561j.jpg[^]

затем я добавляю новую строку в таблицу:
DataRow newRow = table.NewRow();
table.Rows.Add(newRow);

и получение значений с пустыми ячейками (также ID пуст, и это хорошо для меня):
https://i.stack.imgur.com/quGck.jpg>[^]
затем:
GridViewName.DataSource = table;

все это хорошо, но тогда, если я захочу удалить из таблицы эту новую созданную строку, я не смогу. Я пытаюсь снова отфильтровать и привязать GridViewName.

Что я уже пробовал:

DataView view = new DataView(table);
view.RowFilter = "CONVERT(id, System.String) = null or CONVERT(id, System.String) = ''";
Console.WriteLine(view);

но я получаю пустой стол. почему?????

1 Ответов

Рейтинг:
9

Member 12361495

Я нашел решение:

view.RowFilter = "ID IS NULL";