我有以下代码,用于检查
这个文本框的掩码是
我插入这些数据的数据类型是日期。
以下是代码:
下面的代码实现了这个功能,例如:
maskedtextbox是否为空
。如果它是空的,就会向SQL表__.__.____
中插入掩码,因此我认为它会INSERTS NULL
。但当我填写maskedtextbox
时,出现了问题。它仍然INSERT
__.__.____
- NULL。我不知道我犯了什么错误,因为它应该正常插入在maskedtextbox
中的date
。这个文本框的掩码是
__.__.____
,像00/00/0000
。我插入这些数据的数据类型是日期。
以下是代码:
var value2 = (object)DBNull.Value;
DateTime parsedDate2;
if (DateTime.TryParseExact(maskedTextBox2.Text, "__.__.____", null,
DateTimeStyles.None, out parsedDate2))
{
value2 = parsedDate2;
}
prikaz.Parameters.AddWithValue("@odjdate", value2);
编辑:下面的代码提示:“当前上下文中不存在名称'value2'”
var value2 = (object)DBNull.Value;
DateTime parsedDate2;
if (DateTime.TryParseExact(maskedTextBox2.Text, "dd.MM.yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out parsedDate2))
{
value2 = parsedDate2;
}
prikaz.Parameters.AddWithValue("@odjdate", value2);
下面的代码实现了这个功能,例如:
Converting into data type date wasn't succesfull.
这是代码
if (maskedTextBox2.Text == "__.__.____")
{
prikaz.Parameters.AddWithValue("@odjdate", null);
}
else
{
prikaz.Parameters.AddWithValue("@odjdate",maskedTextBox2.Text);
}
DateTime.TryParseExact
中提供格式,而不是__...
请问你的掩码格式是什么? - Sriram SakthivelmaskedTextBox2.Text
值长什么样子?请展示一个示例。 - Sriram Sakthivel