F# 如何将具有度量单位的十进制转换为具有相同单位的浮点?

F# 如何将具有度量单位的十进制转换为具有相同单位的浮点?,f#,units-of-measurement,F#,Units Of Measurement,我想不出如何将一个带度量单位的十进制数转换成一个带度量单位的浮点数 我一直在尝试类似以下的代码: let toFloat (value: decimal<'T>) = let value = float (value / LanguagePrimitives.GenericOne<decimal<'T>>) value * LanguagePrimitives.GenericOne<float<'T>> 让toFlo

我想不出如何将一个带度量单位的十进制数转换成一个带度量单位的浮点数

我一直在尝试类似以下的代码:

let toFloat (value: decimal<'T>) =
    let value = float (value / LanguagePrimitives.GenericOne<decimal<'T>>)
    value * LanguagePrimitives.GenericOne<float<'T>> 
让toFloat(值:十进制>)
value*LanguagePrimitives.GenericOne

有可能创建这样一个函数吗?如果是这样的话,它会是什么样子?

我在上面看了一下,似乎这应该是可行的:

let toFloat (value: decimal<'T>) =
    LanguagePrimitives.FloatWithMeasure<'T>(float (decimal value))
let toFloat(值:十进制(浮点(十进制值))