C#DateTime,这个方法区域设置安全吗?

JL.*_*JL. 6 c# datetime

我使用以下方法将日期序列化为字符串

private const string DateFormatString = "dd.MM.yyyy HH:mm:ss";
string LastsuccessfuldownloadDateTime = DateTime.Now.AddDays(-91).ToString(DateFormatString);
Run Code Online (Sandbox Code Playgroud)

这是确保字符串始终以此格式序列化的最安全的方法吗?

在一台服务器上更新我运行它完全得到字段错误.

Mar*_*ell 9

我会使用显式不变量进行序列化以避免任何意外的陷阱.您可能还想想是否需要UTC; 例如:

string LastsuccessfuldownloadDateTime = DateTime.UtcNow.AddDays(-91).ToString(
    DateFormatString, CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

  • +1.帮自己一个忙,并使用UtcNow.您可以始终确定实际意味着什么时间,并且您不会依赖系统的配置方式与序列化日期时间时的方式相同. (2认同)