c#中条件语句的问题
本文关键字:问题 语句 条件 | 更新日期: 2023-09-27 18:08:40
if (txt_SendAt.Text != null)
{
//string SendAt_date = txt_Respondby.Text;
DateTime Send_date = Convert.ToDateTime(txt_SendAt.Text);
param[15] = new MySqlParameter("@SendDate", MySqlDbType.DateTime);
param[15].Value = Send_date;
command.Parameters.AddWithValue("@SendDate", Send_date);
}
else
{
param[15] = new MySqlParameter("@SendDate", MySqlDbType.DateTime);
param[15].Value = now;
command.Parameters.AddWithValue("@SendDate", now);
}
我有一个文本框,我从日历中选择日期和时间。当我将文本框保留为空时,它应该执行else条件下的语句,但它执行if条件下的语句。我哪里错了
我得到这个错误,如果我留下空白字符串不被识别为有效的日期时间。
您正在测试文本框本身是否为空,而不是它的text:
if (string.IsNullOrEmpty(txt_SendAt.Text) == false)
使用String.IsNullOrWhitespace(txt_SendAt.Text)
代替null。
您正在检查控制是否为null
。它不会是null
;查看文本框中的"Text
"属性是否有值。因此,如果您使用IsNullOrEmpty
或IsNullOrWhitespace
,您将进行双重检查-如果控件的属性为null(不太可能)或如果它只是空白(或空格)。
尝试:
if (!string.IsNullOrEmpty(txt_SendAt.Text))
txt_SendAt指文本框控件。你想要txt_SendAt。文本
您应该尝试将if更改为
if ((txt_SendAt.Text != null)||(txt_SendAt.Text.Trim() != ""))