DateTime.Parse和Convert.ToDateTime之间有什么区别?

Shr*_*ree 38 c# asp.net

两者之间有什么区别吗?

Convert.ToDateTime
Run Code Online (Sandbox Code Playgroud)

DateTime.Parse
Run Code Online (Sandbox Code Playgroud)

哪一个更快或哪个更安全?

Dav*_*vid 32

根据Jon Skeet在另一个论坛上回答 ......

Convert.ToDateTime在内部使用DateTime.Parse,使用当前文化 - 除非你传递null,在这种情况下它返回DateTime.MinValue.

如果您不确定字符串是否是有效的DateTime,请不要使用,而是使用DateTime.TryParse()

如果您确定字符串是有效的DateTime,并且您知道格式,则还可以考虑DateTime.ParseExact()或DateTime.TryParseExact()方法.

  • "简而言之,Convert.ToDateTime()消除了设置CultureInfo所需的代码,你必须这样做才能使用DateTime.Parse()"这不是真的.您不必将CultureInfo设置为使用DateTime.Parse().DateTime.Parse有一个只需要1个字符串的重载,它只使用当前的文化信息,而不必将其传入. (2认同)