Generics 如何使用类型参数调用IronScheme clr调用

Generics 如何使用类型参数调用IronScheme clr调用,generics,type-parameter,ironscheme,Generics,Type Parameter,Ironscheme,我试图使用IronScheme和OpenXMLSDK来读取XLSX文件 OpenXMLSDK API包含一个方法,该方法在C#中写为worksheetPart.sheet.Elements(),其中传递类型参数有助于过滤给定类型的元素 如何将其转换为IronScheme,以便传递SheetDatatype参数?我尝试了以下调用,但它们都返回了所有元素: (clr-call Worksheet Elements sheet) ; sure, will return all

我试图使用IronScheme和OpenXMLSDK来读取XLSX文件

OpenXMLSDK API包含一个方法,该方法在C#中写为
worksheetPart.sheet.Elements()
,其中传递类型参数有助于过滤给定类型的元素

如何将其转换为IronScheme,以便传递
SheetData
type参数?我尝试了以下调用,但它们都返回了所有元素:

(clr-call Worksheet Elements sheet)             ; sure, will return all
(clr-call Worksheet (Elements Object) sheet)    ; syntax test -> allowed, but returns all
(clr-call Worksheet (Elements SheetData) sheet) ; sadly this also returns all

提前感谢您,Frank

您正在使用“type hint”语法(这确实是一个bug,应该报告为未找到)

通用语法为:

(clr-call Worksheet (Elements #(SheetData)) sheet)
将泛型类型参数作为方法的向量传入

遗憾的是,这与为类型指定泛型类型参数不同


我将把它放在待办事项列表中。

您使用的是“类型提示”语法(这确实是一个bug,因为应该报告为未找到)

通用语法为:

(clr-call Worksheet (Elements #(SheetData)) sheet)
将泛型类型参数作为方法的向量传入

遗憾的是,这与为类型指定泛型类型参数不同


我会把它列在待办事项清单上。

谢谢leppie-顺便说一句,非常感谢IronScheme!建议的语法对我不起作用(使用[.I]的最新预编译版本,通过显示工作表元素w/o type
(clr调用工作表元素工作表)进行测试)
并且使用上述语法-相同的结果和两个结果列表确实包含与
SheetData
不同类型的元素。如果这是一个潜在的发布问题,我可以自己从Github编译,否则我可以提供如何复制的更多细节-但这也需要一个开放的XML安装。@Frankluben:您可以获得lat这里的est构建:(转到FX2构建,然后是artefacts),但这不会有什么区别。我将尝试重新处理泛型问题,可能与OpenXML API中的继承有关。嗨,leppie,感谢您的持续支持。正如您所想,更新到当前构建(1.0.99-54e877f)没有更改结果。我已经有了一个解决方法,使用
过滤器
过滤不需要的实例,所以我很好。您好,FrankThank leppie-顺便说一句,非常感谢IronScheme!建议的语法对我不起作用(使用[.我通过显示工作表元素w/o type
(clr调用工作表元素表)
并且使用上述语法-相同的结果和两个结果列表确实包含与
SheetData
不同类型的元素。如果这是一个潜在的发布问题,我可以自己从Github编译,否则我可以提供如何复制的更多细节-但这也需要一个开放的XML安装。@Frankluben:您可以获得lat这里的est构建:(转到FX2构建,然后是artefacts),但这不会有什么区别。我将尝试重新处理泛型问题,可能与OpenXML API中的继承有关。嗨,leppie,感谢您的持续支持。正如您所想,更新到当前构建(1.0.99-54e877f)没有更改结果。我已经有了一个解决方法,可以使用
过滤器
过滤不需要的实例,所以我很好。祝你好运,Frank