托管时,日期时间格式在 C# 中缺少匹配

本文关键字:格式 日期 时间 | 更新日期: 2023-09-27 18:35:22

我遇到的情况是在本地工作但不在托管(godaddy.com)

DateTime date = DateTime.Parse(TextBoxSelectedDate.Text.Trim());

string d = date.ToString("yyyy-MM-dd");//本地主机出放 2013-10-13

 DateTime.Parse(d);

但是当我托管时给出这个例外

System.FormatException: String was not recognized as a valid DateTime.

这是为什么

谢谢

托管时,日期时间格式在 C# 中缺少匹配

您的托管服务商使用的语言/地区设置可能与您不同。尝试使用特定区域性对象调用Parse

DateTime.Parse("2013-10-13", CultureInfo.GetCultureInfo("the name of your culture, en-US for example"))

您可以在此处找到区域性名称列表:http://msdn.microsoft.com/en-us/goglobal/bb896001.aspx

您也可以使用CultureInfo.InvariantCulture

DateTime 转到 string 时使用格式字符串。当您朝相反的方向前进时,使用相同的格式字符串:

DateTime.ParseExact(d, "yyyy-MM-dd", null)

如果你想绝对确保线程的当前区域性不会搞砸事情,你可以使用固定区域性:

DateTime.ParseExact(d, "yyyy-MM-dd", CultureInfo.InvariantCulture)