我在使用Generative Type Provider时遇到一个奇怪的错误,该提供程序创建的类型带有用计量单位注释的属性。为简单起见,度量单位是内置的SI单位。
类型提供程序可以构建,并且可以从其他项目中引用。在我引用上述属性之前,其他项目均已成功构建。
在Visual Studio中,如果我将鼠标悬停在类型上,
let collision = new MAVLink.Messages.COLLISION()
然后,类型定义将显示在工具提示中,包括带有带注释的度量单位的属性:
member TIME : float32<second> with get, set
一切都会建立,直到我引用该属性:
let t = collision.TIME
在这种情况下,我会收到一个错误:Invalid number of generic arguments to type 'Single' in provided type. Expected '0' arguments, given '1'.
有人知道导致此问题的原因吗?