从XML文件中读取值会抛出一个错误-假F#MAKE
我试图从FAKE读取XML文件中的值,但我得到了一个错误,即从XML文件中读取值会抛出一个错误-假F#MAKE,f#,f#-interactive,f#-3.0,f#-data,f#-fake,F#,F# Interactive,F# 3.0,F# Data,F# Fake,我试图从FAKE读取XML文件中的值,但我得到了一个错误,即 .fsx(9,16) : eror FS000: Incomplete structurd construct at or before this point in expression. Expected '->' or other token. 下面是我的代码,我使用XMLHelper.XMLRead从xml文件中读取值 #r "./packages/FAKE/tools/FakeLib.dll" open Fake o
.fsx(9,16) : eror FS000: Incomplete structurd construct at or before this
point in expression. Expected '->' or other token.
下面是我的代码,我使用XMLHelper.XMLRead
从xml文件中读取值
#r "./packages/FAKE/tools/FakeLib.dll"
open Fake
open Fake.XMLHelper
Target "BuildMain" (fun _ ->
for s in XMLHelper.XMLRead true "D:/test/Version.Config" "/version/major/minor"
trace s)
"BuildMain"
RunTargetOrDefault "BuildMain"
下面是我的XML文件:
<version>
<major number="2">
<minor>1</minor>
<build>1</build>
<revised>1</revised>
</major>
</version>
1.
1.
1.
在这里,我试图从次要版本中读取值,而且我可以将该值存储在变量中,以便以后使用它吗。。。在中,构造要求在主体前有
do
或箭头->
:
for s in XMLHelper.XMLRead true "D:/test/Version.Config" "/version/major/minor" do
trace s
如果主体是另一个循环或只是副作用代码,则使用do
,如:
for x in 1..5 do
printfn "%d" x
您可以使用arrow->
让主体生成一个值,该值随后成为结果列表或序列的一部分,如中所示:
let evenNumbers2to10 = [for x in 1..5 -> x*2]
箭头->
可以被视为do yield
的快捷方式:
let evenNumbers2to10 = [for x in 1..5 do yield x*2]
正如你提到的,我在for循环中进行跟踪,但是我得到了一个错误,即类型“(string->string->seq)”不是一个可以用这个syantax枚举其值的类型,即与seq、IEnumerable或IEnumerable都不兼容,并且没有GetEnumerator方法该函数还有两个参数。是的,现在它正在工作。。感谢您的努力:)