小编Vyt*_*nis的帖子

F# 将数组传递给属性

在 C# 中我可以这样做:

[InlineData(new [] { "foo" })]
Run Code Online (Sandbox Code Playgroud)

当我尝试在 F# 中执行此操作时:

[<InlineData([| "foo" |])>]
Run Code Online (Sandbox Code Playgroud)

它给了我一个编译错误:

This is not a valid constant expression or custom attribute value
Run Code Online (Sandbox Code Playgroud)

我做错了什么或者 F# 不支持数组作为属性参数吗?

更新

该问题似乎与属性的签名有关:

InlineDataAttribute(params dataValues: obj[]) : unit
Run Code Online (Sandbox Code Playgroud)

目标是将字符串数组作为 params 数组中的单个元素传递。

f#

5
推荐指数
1
解决办法
607
查看次数

标签 统计

f# ×1