C# 从字符串转换为日期时间';2020年4月10日&x27;

C# 从字符串转换为日期时间';2020年4月10日&x27;,c#,datetime,date-parsing,C#,Datetime,Date Parsing,在转换我从web表单收到的日期字符串方面寻求帮助,其中的格式类似于“2020年4月10日”。我需要以美国日期格式“yyyy-mm-dd”将其保存到数据库中,以便提供的示例日期为“2020-04-10” 这就是我到目前为止的情况,它抱怨这不是一个有效的日期时间 string LicenseExpiry = LicenseExpiry.Text; IFormatProvider culture = new CultureInfo("en-US", true);

在转换我从web表单收到的日期字符串方面寻求帮助,其中的格式类似于“2020年4月10日”。我需要以美国日期格式“yyyy-mm-dd”将其保存到数据库中,以便提供的示例日期为“2020-04-10”

这就是我到目前为止的情况,它抱怨这不是一个有效的日期时间

    string LicenseExpiry = LicenseExpiry.Text;
    IFormatProvider culture = new CultureInfo("en-US", true);
    DateTime dateExpires = DateTime.ParseExact(LicenseExpiry, "yyyy-MM-dd", culture);
我也尝试了以下同样失败的方法

DateTime dateExpires;
string LicenseExpiry = LicenseExpiry.Text;
IFormatProvider culture = new CultureInfo("en-US", true);
if (DateTime.TryParseExact(LicenseExpiry, "yyyy-MM-dd", culture, DateTimeStyles.None, out dateExpires))
{ 
    // Do something
}

有人能帮我看看哪里出了问题吗?我也不允许更改Ui/表单来进行任何客户端日期操作,因此我的解决方案需要在C#code behind文件中完成。

MM
表示月数(从01到12)

要解析2020年4月10日,您 需要
MMMM
,请参阅

“MMMM”自定义格式说明符表示月份的全名


您的数据是一个字符串,格式为
2020年4月10日
,与您指定的
“yyyy-MM-dd”
格式完全不同
ParseExact
表示您将指定数据的确切格式。