首页 > 解决方案 > C# 日期格式字符串使用 windows 设置而不是传递给它的字符串

问题描述

我希望 ToString("MM/dd/yyyy") 忽略系统设置并始终按定义输出格式。如果我将 Windows 10 日期字符串设置为 08/27/2020 格式,则以下测试通过,但如果我将其设置为 2020-08-27 格式并出现以下错误,则测试失败。

我错过了什么吗?

[Test]
public void TestDate() {
Assert.AreEqual("08/08/2020", (new DateTime(2020, 8, 8)).ToString("MM/dd/yyyy"));
}

结果

String lengths are both 10. Strings differ at index 2.
Expected: "08/08/2020"
But was:  "08-08-2020"

标签: c#.net

解决方案


好的,在输入这​​个时,我看到了这个工作。我仍然这是一个问题。

[Test]
public void TestDate() {
    Assert.AreEqual("08/08/2020", (new DateTime(2020, 8, 8)).ToString(@"MM\/dd\/yyyy"));
}

根据“MM'/'dd'/'yyyy”下面的评论也可以。


推荐阅读