我希望日期和时间在我的页面上显示如下:-
1 minute ago
25 minutes ago
45 minutes ago
4 hours ago
3 weeks ago
我的存储过程以下列格式返回日期:-
2011-02-08 13:14:44.513
我可以按照我希望它仅在 SP 中显示的方式对其进行格式化,还是必须在我的 aspx 页面后面的代码中进行编码?
最佳答案
数据库只是格式化内容的错误级别。这是工作:
- 数据输入,数据输出(任何形式的查询/操作)
- 稳健的持久性、完整性、原子性等 (ACID)
- 除此之外
当然,您可以在数据库中格式化它,但是为什么要?这应该在您的应用程序层中完成,允许:
- 缓存和重用不变的
2011-02-08 13:14:44.513
(其中“1 分钟前”随时间不断变化)- 缓存数据等 - 国际化和本地化
- UI 的正确编码(是 html?xml?xaml?csv?txt?winforms?)- 数据库不应该知道UI
- “缩小”而不是“扩大”——不要在数据库中做超出你需要的事情;多个应用服务器比超强大的数据库服务器便宜
至于“在我的 aspx 页面后面的代码中编码”,你也不需要这样做;p(但是,我非常偏爱 MVC+razor)
关于c# - 是否可以在 MSSQL 过程本身中格式化日期,以便它可以显示为非正式日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6493809/