是否可以在F#中组合多个属性?

时间:2012-03-08 16:00:43

标签: f# attributes

我正在试图弄清楚这个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)>]

同样的结果。

这是否可行,如果是,那么正确的语法是什么?

1 个答案:

答案 0 :(得分:11)

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