My DataGridView привязан к результату запроса базы данных через SqlDataReader
, и когда я тестирую значение ячейки для null
, я получаю неожиданные результаты.Проверьте, являются ли данные в ячейке datagridview нулевыми
Мой код-то вроде этого:
SqlConnection con = new SqlConnection(
"Data Source = .;Initial Catalog = SAHS;integrated security = true");
con.Open();
SqlCommand cmd3 = new SqlCommand(
"select Status from vw_stdtfeedetail
where Std= 6 and Div ='B' and name='bbkk' and mnthname ='June'", con);
SqlDataReader dr = cmd3.ExecuteReader();
BindingSource bs = new BindingSource();
bs.DataSource = dr;
dataGridView3.DataSource = bs;
this.monthFeeTableAdapter.Fill(this.sAHSDataSet4.MonthFee);
if (dataGridView3.CurrentCell.Value == null)
{
MessageBox.Show("Pending");
}
else
{
MessageBox.Show("Already Paid");
}
Я получаю выход Уже платный даже если значение из базы данных нуля.
при отладке, что делает значение шоу, как? – peroija
@StingyJack - Это полная противоположность тому, что предполагает OP. Он предполагает, что NULL означает, что он не оплачен. Это может быть столбец с указанием даты, когда что-то было оплачено, поэтому NULL - идеальный способ указать, что дата не указана. – GarethD
Да, я ясно получил случай в понедельник. – StingyJack