应用程序作为 Windows 服务运行时的日期时间格式
在我的系统中,日期格式设置为 YYY-MM-DD 格式。因此,当我调用 DateTime.Now 时,我的 C# 应用程序将采用此格式,这很好。
现在使用 Install util 命令将我的应用程序安装为服务。
运行服务后,它会获取日期格式为dd/mm/yyy
。 但我想将格式保存为数据库中的 yyy-MM-DD 格式。
我是否需要更改代码或者可以在系统中设置此格式。
因为区域设置仅以 yyy-mm-dd 格式完成。
仅当我将应用程序安装为服务时才会出现此问题。
请帮忙。提前致谢。
In my system the date format is set as YYY-MM-DD
format.So my c# application will take this format when i call DateTime.Now
which is fine.
Now in installed my application as service using Install util command.
After running services it gets the date format as dd/mm/yyy
.
But i want to save the format as yyy-MM-DD
format in database.
Whether i need to change my code or i can set this format in system.
because already the regional settings are done in yyy-mm-dd
format only.
This problem happens only when I install my application as a service.
Please help. Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
首先问你一个问题:为什么将日期作为字符串存储在数据库中?我强烈建议将其存储为日期值。这将消除存储数据时的任何格式问题。
作为第二个建议,如果您需要以特定格式存储字符串,我将确保显式格式化字符串,而不是依赖系统设置:
First a question to you: why do you store the date as a string in your database? I would strongly suggest to store it as a date value instead. This would eliminate any formatting problems when storing data.
As a second suggestion, I would make sure to format the string explicitly, rather than relying on system settings, if you need to store it in a specific format:
使用日期时间格式:
这将为您带来:
Use the DateTime formatting:
That will get you:
在我的系统中,日期格式在区域设置中
?这仅设置当前用户的格式。因此,对作为另一个用户运行的进程没有影响,而服务进程几乎总是这样做。
In Regional Settings?
That only sets the format for the current user. Hence has no effect on processes running as another user as service processes nearly always do.