-1

我正在使用此代码来传递日期时间。

Convert.ToDateTime(textBox1.Text)

但编译器显示错误,字符串未被识别为有效日期时间。那么如何避免这个错误并且是我数据库中的一个日期时间字段。

4

1 回答 1

0
Convert.ToDateTime(textBox1.Text)

string如果in 中的值textBox1.Text不代表有效值DateTime(或至少无法解析为具有 C# 中的默认功能的值),则此代码将引发异常。您可以添加一些防御性编程来处理此类错误。

DateTime类型(以及 .NET 中的大多数(如果不是全部的话)常见值类型)有一个专门调用的方法,TryParse()目的是尝试将值解析为该类型而不引发异常。true如果解析成功,则该方法返回,false否则返回。它接受一个out参数来保存解析后的值(如果解析不成功,则为原始值)。

所以代替这个:

var dateTimeValue = Convert.ToDateTime(textBox1.Text);

你可以使用这样的东西:

var dateTimeValue = DateTime.MinValue;
if (DateTime.TryParse(textBox1.Text, out dateTimeValue))
    // use the value for something
于 2012-07-07T09:23:30.803 回答