应用程序作为Windows服务运行时的日期时间格式

时间:2011-10-10 07:07:47

标签: c# .net windows-services datetime-format

在我的系统中,日期格式设置为YYY-MM-DD格式。因此,当我调用DateTime.Now时,我的c#应用程序将采用此格式。

现在使用Install util命令将我的应用程序安装为服务。

运行服务后,日期格式为dd/mm/yyy。 但我想将格式保存为数据库中的yyy-MM-DD格式。

我是否需要更改我的代码,或者我可以在系统中设置此格式。

因为区域设置仅以yyy-mm-dd格式完成。

仅当我将应用程序安装为服务时才会出现此问题。

请帮忙。提前谢谢。

3 个答案:

答案 0 :(得分:3)

首先向您提出一个问题:为什么将日期作为字符串存储在数据库中?我强烈建议将其存储为日期值。这将消除存储数据时的任何格式问题。

作为第二个建议,如果您需要以特定格式存储字符串,我会确保明确格式化字符串,而不是依赖于系统设置:

var dateAsString = theDate.ToString("yyyy-MM-dd");

答案 1 :(得分:1)

使用DateTime格式:

 DateTime.Now.ToString("yyy-MM-dd");

那会得到你:

  

yyy:年份(与yyyy相同),例如2011
  MM:月份编号(单个数字的格式为前导零)
  dd:日期编号(单个数字的格式为前导零)

答案 2 :(得分:1)

  

在我的系统中,日期格式设置为YYY-MM-DD格式

在区域设置中?

仅设置当前用户的格式。因此,对于像其他用户一样运行的进程几乎没有影响,因为服务进程几乎总是如此。