ToLongDateString()不起作用

Cod*_*man 0 c# datetime-format

string[] splitDate = DateOfBirth.ToLongDateString().Split(new char[] { ',', ' ' });
foreach (string s in splitDate)
{
    Console.Write(s);
}
Run Code Online (Sandbox Code Playgroud)

对于类似的输入"15/08/1991",它"Thursday August 15 1991"在我的机器上给出输出但"August 15 1991"在另一台机器上给出输出.

代码在我的系统上工作正常但由于上述原因在另一个系统上失败.任何帮助表示赞赏.

Chr*_*tos 8

发生这种情况,因为:

ToLongDateString方法返回的字符串对文化敏感

正如这里所说的那样.

为了修复它,你必须指定的CurrentCulture属性CurrentTread.

Thread.CurrentThread.CurrentCulture = new CultureInfo("...");
Run Code Online (Sandbox Code Playgroud)

但是,这将影响依赖于代码中的文化的所有内容.

以下是您可以使用的预定义文化列表.