0

我需要维护一个 F# 项目。现在我需要导入一个 C# dll 并在那里使用一个函数。

我所做的是,在 F# 解决方案中,我添加了 C# 项目,然后在 F# 项目中,我添加了这个新的 C# 项目作为参考。具体步骤如下。

在解决方案资源管理器中,我找到了 F# 项目。右键单击引用,然后添加引用。在解决方案类别下,我检查了 C# 项目。

在所有这些步骤之后。我的 C# 项目被列为解决方案资源管理器中的参考之一。但它有一个带有感叹号的黄色三角形。

在 F# 解决方案文件中。我试过以下

open CSV_Reader    //this is the project name, and also the namespace


module Stage =

    CSV_Reader.Parser.InsertIntoDB(connStr, tableName, csvFilePath)

编译器告诉我 CSV_Reader 的 2 次出现

The namespace or module 'CSV_Reader' is not defined
The namespace or module 'CSV_Reader' is not defined

编辑:

感谢Guy Coder 提供的链接(可能是重复的) ,我发现我遇到的问题是 .net 框架不匹配问题。F# 项目在 .net 4 上运行,但 C# dll 是用 .net 4.5 编写的。因此,当我引用 C# 项目时,会有一个带有感叹号的黄色三角形。我需要做的就是修改 C# dll 项目以使用与 F# 项目相同版本的 .net 框架,问题就解决了。

4

0 回答 0