我有一个名为BasicFunctions.fs的文件,由Program.fs使用。 BasicFunctions.fs肯定高于项目中的Program.fs,所以顺序是正确的。但我继续犯这个错误:
错误1库或多文件应用程序中的文件必须以命名空间或模块声明开头,例如'命名空间SomeNamespace.SubNamespace'或者'模块SomeNamespace.SomeModule'。只有应用程序的最后一个源文件可以省略这样的声明。
我使用VS 2013,使用F#3.1。 这是示例代码,没什么特别的:
BasicFunctions.fs
module BasicFunctions
let runAll =
let result = 4
result
Program.fs
[<EntryPoint>]
let main argv =
printfn "%A" argv
BasicFunctions.runAll
0 // return an integer exit code
以下是解决方案的屏幕截图:
答案 0 :(得分:4)
我发现了问题。复制和粘贴.fs文件时似乎存在问题,而不是从头开始创建新文件。使用谷歌找到此链接: https://github.com/Microsoft/visualfsharp/issues/104
要解决此问题,我刚刚删除了两个文件BasicFunctions.fs和BasicFunctions2.fs,并使用VS中的&#34; New Item ..&#34; 菜单项创建了它们。确保它们位于主文件Program.fs。
之前如果您不想重新创建文件的麻烦,最好实际修改.fsproj文件以确保Program.fs是最后一个文件。积分将转到评论部分的 rmunn 。
现在已成功建立,感谢大家的帮助。