应该在代码中的什么位置进行转换?客户端、服务器、业务还是数据库?
我们目前在数据库中进行时区和计量单位的转换,性能正在让我们崩溃,并且希望移动逻辑。您认为最佳位置在哪里?
谢谢
最佳答案
我肯定会从数据库中获取该代码。您希望尽可能将数据全部存储在一组通用的单位中。存储特定区域设置(通常是您自己的区域设置)的时间数据是很常见的。
我也不会将其放在业务层中,因为这样您就会遇到必须使用不同区域设置的时间进行计算的情况,并且您需要它们具有相同的起始引用。同样,您应该将它们全部保留在一个共同的基础上,这里最合乎逻辑的事情是让该基础成为您存储它们的任何区域设置。
我认为最合乎逻辑的做法是在显示时间之前的最后一刻将时间转换为用户的区域设置。这将它牢牢地置于 GUI 层。
关于datetime - 在哪里进行转换 - 时区、计量单位等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/398275/