如何在F#项目中使用C#dll?获得带有感叹号的黄色三角形

时间:2016-03-24 16:45:46

标签: c# f# project-reference

我需要维护一个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)

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

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

编辑:

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

0 个答案:

没有答案