为什么DateTimeConverter.ConvertFrom使用空字符串?

时间:2011-12-21 19:55:29

标签: c# .net

在执行DateTimeConverter.ConvertFromString(“”)时,它会返回DateTime.MinValue。你可以拥有任意数量的空白空间,它仍然有效。如果你给它一个空字符串,它将返回null,这是我所期望的。

此行为与将返回null或抛出异常的所有其他TypeConverters不同。

这也与DateTime.TryParse(“”)的行为不同,后者返回false意味着它不起作用。

我希望ConvertFrom方法的行为与TryParse方法相同,如果有空或空白字符串,它应该失败。

为什么这样做?这是一个错误吗?

我正在做一些类型转换,这是我遇到意外/不一致行为的情况。有没有办法可靠地进行适用于所有类型的类型转换?或者我是否需要为DateTime案例添加特殊条款?

if( typeConverter is DateTimeConverter )
{
    // Check if the value is a white space string.
}

0 个答案:

没有答案