gpt4 book ai didi

c# - UOM(度量单位)设计模式

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:27:09 27 4
gpt4 key购买 nike

寻找关于存储和转换已知值(即米到英尺)的一般设计模式原则。一直在谷歌搜索但没有运气,所以我一定遗漏了一些东西。

假设在单个表中包含具有不同 UOM 的多个字段,最佳做法是什么?目前,许多字段都是隐含的,我们正在考虑对其进行标准化。我们希望让用户自由地输入他们的 UOM,但其他​​人可以在他们喜欢的 UOM 中查看。

我是否应该存储“输入的值”并转换为一些常见的原语(用户输入英尺我转换为米并存储)?我应该将这个输入的英尺值存储为审核备份吗?

我不是某些数据库表的唯一消费者,其他应用程序始终在知道值+UOM 与原始用户输入值之间进行转换是否更好。

是否存在我可能遗漏的对精度的严重转换影响。米>英尺>米对于业务应用程序的转换应该足够可靠(转换可以到小数点后第 17 位,但显示和输入的值仅限于小数点后 2-4 位)

是否有任何其他想法或链接可以为我指明正确的方向,这样我就不会重新发明一个已知问题的解决方案?

请注意,我并不是在设想一些带有运算符重载的宏伟解决方案,而是更多在实际应用程序中可以正常工作的普通 Joe 开发人员可以维护的解决方案。

最佳答案

如果您想要遵循 UOM 的模式,JSR-275 (java) 解决了这个问题。一个流行的实现 JSR-275 的库是 JScience .

至于值的存储,我只会为 valuemeasurement type(例如米/英尺等)创建一列,该列永远不会更改。然后可以根据要求轻松完成转换。

关于c# - UOM(度量单位)设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5308701/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com