我试图找出此C#属性声明的F#等效项:

[
   ComImport(),
   InterfaceType(ComInterfaceType.InterfaceIsIUnknown),
   Guid("000214EE-0000-0000-C000-000000000046")
]


我可以做到这一点,它可以很好地编译:

[<ComImport>]
[<InterfaceType(ComInterfaceType.InterfaceIsIUnknown)>]
[<Guid("000214EE-0000-0000-C000-000000000046")>]


但是我现在很好奇-是否可以在F#中组合多个属性?当我尝试对前两个属性执行以下操作时:

[<ComImport>,<InterfaceType(ComInterfaceType.InterfaceIsIUnknown)>]


我收到FS0010错误。还尝试了这个:

[<ComImport , InterfaceType(ComInterfaceType.InterfaceIsIUnknown)>]


结果相同。

这可能吗,如果是,正确的语法是什么?

最佳答案

是。

[<
  ComImport;
  InterfaceType(ComInterfaceType.InterfaceIsIUnknown);
  Guid("000214EE-0000-0000-C000-000000000046")
>]

07-24 09:50