C#string to SqlDateTime:如何设置格式进行识别?

Ask*_*mov 3 c# asp.net datetime locale sqldatetime

我需要用

SqlDateTime.Parse(val)
Run Code Online (Sandbox Code Playgroud)

其中val是一个字符串,例如"23.3.1992 00:00:00".

该字符串采用欧洲格式,即月份前一天.然而,Parse想要"美国式"格式.我怎么能告诉它使用特定的日期时间格式/语言环境?

提前致谢!

Kha*_*Ali 5

试试这个:

string val = "23.12.1992 00:00:00";

// Parse exactly from your input string to the native date format.
DateTime dt = DateTime.ParseExact(val, "dd.M.yyyy hh:mm:ss", null);

// Part to SqlDateTime then            
System.Data.SqlTypes.SqlDateTime dtSql = System.Data.SqlTypes.SqlDateTime.Parse(dt.ToString("yyyy/MM/dd"));
Run Code Online (Sandbox Code Playgroud)

这可以在一个声明中完成,但只是为了说明而分开.