如何将 C# 程序集引用添加到 F# 项目?

How can I add a C# assembly reference to an F# project?

有一个用 C# 编写的程序集,它兼作命令行 EXE。我需要从 F# 项目引用此程序集。我对 F# 一无所知,我只需要用对这个新程序集的调用替换一行代码。

当我添加引用时,我可以在对象浏览器中查看它并看到它的命名空间和 类 已被加载和识别。

但是当我在项目源代码中为其顶级命名空间包含一行 open SomeNamespace 时,出现编译错误:

The namespace or module 'SomeNamespace' is not defined

我测试过我可以从一个C#项目中引用和调用这个C#程序集EXE。 还测试了我可以从这个 F# 项目 w/o 错误中引用驻留在 DLL 中的 C# 程序集,例如 MigraDoc.DocumentObjectModel-gdi

从 F# 引用 C# 的语法与引用 F# 程序集的语法是否不同?

细节决定成败! C# 程序集是比旧 F# 项目更高的 .NET 版本。同步解决了问题。