F# 获得;选择权;假生成文件中缺少xUnit2目标的错误

F# 获得;选择权;假生成文件中缺少xUnit2目标的错误,f#,f#-fake,xunit2,F#,F# Fake,Xunit2,当我将示例xUnit2目标添加到我的假构建文件时,我遇到以下错误: 错误FS0001:此表达式应具有类型 字符串选项 但这里有一种类型 串 目标示例来自 Visual Studio正在突出显示代码的(testDir@@@xunit.html)部分 我知道它需要两个参数,但我还不知道足够的F#来解决问题: 在包含xUnit目标之前,我的假构建运行良好。 我已经将open Fake.Testing.XUnit2添加到构建文件中,并且我没有发现与XUnit2引用有关的错误 任何帮助都将不胜感激。因此错

当我将示例xUnit2目标添加到我的假构建文件时,我遇到以下错误:

错误FS0001:此表达式应具有类型 字符串选项 但这里有一种类型 串

目标示例来自

Visual Studio正在突出显示代码的
(testDir@@@xunit.html)
部分

我知道它需要两个参数,但我还不知道足够的F#来解决问题:

在包含xUnit目标之前,我的假构建运行良好。 我已经将
open Fake.Testing.XUnit2
添加到构建文件中,并且我没有发现与XUnit2引用有关的错误


任何帮助都将不胜感激。

因此错误在于
htmloutpath
的类型为

HtmlOutputPath : string option
在Fake中,我相信
@
确实有
路径。组合
所以
testDir@@@xunit.html
应该有string类型

要获得匹配的类型,可以使用

HtmlOutputPath = Some(testDir @@ "xunit.html")

这表明FAKE的文档不正确。

我认为您的思路是正确的,但问题不正是
testDir@@@xunit.html吗“
字符串
,但应该是
字符串选项
?是的,但是当你在名称空间上打开
时,显然会发生一些神奇的事情-我不明白这一部分(由于OP声明它在
open
之后工作,实际上,我只想澄清一下,我将
open
添加到了伪文件的顶部。因此我有一个对xUnit2代码的有效引用。哦,在这种情况下
htmloutpath=Some(testDir@@@xunit.html)
应该可以,但是可能文档需要更新
一些(…)
就是答案!如果你更新了答案,我会接受的。
HtmlOutputPath = Some(testDir @@ "xunit.html")