2012-03-20 32 views
38

我有一个解决方案,包含大量项目,但其中一个项目正在运行。不工作的是ConsoleApplication,它依赖于C#类库项目。我已经添加了一个对库项目的引用,并添加了名称空间(我已经检查过它是正确的),但是在我引用库中的类时,我得到:项目引用不能在VisualStudio2010中工作

类型或名称空间'MyClass'可能没有被发现(你是否缺少using指令或程序集引用?)。

库项目正在成功构建(我可以看到DLL出现在bin文件夹中),并且我试过了一个项目引用,并且还引用了DLL本身。两者都不起作用。

此外,所有项目都设置为使用“任何CPU”的平台目标构建。

我已经尝试了几乎所有我在论坛上遇到的建议,但没有成功。任何人都可以阐明发生了什么问题吗?

感谢

这解决了这个问题:

控制台应用程序中有一个.NET Framework 4 Client Profile目标框架,而库刚.NET Framework 4。我将控制台应用程序设置为.NET Framework 4,并且它完全构建完成。

+1

只是我的两分钱。 C#区分大小写。你检查过你的命名空间的情况吗? – Steve 2012-03-20 15:48:47

+0

该类是否有公共构造函数? – 2012-03-20 15:49:58

+0

看看下面的antao的答案 - 我们经常看到git合并了我们的项目文件。 – increddibelly 2012-03-20 15:58:18

回答

83

我敢打赌,你的图书馆,你的应用程序之间的不匹配框架... 检查您的库不与上级版本比你应用程序建立,或者如果你的应用与客户端配置文件风味建设

+0

是的,你点上,我已经把一个完整的答案如下 - 感谢提示Cédric – Richard 2012-03-20 15:57:14

+7

谢谢大家,这很快! :) 是,控制台应用程序有.NET Framework 4的客户端配置文件的目标框架,而图书馆只是有.NET框架4.我的控制台应用程序设置为” .NET框架4" 而这一切完全建立。 我不会想到它被放在那儿给出错误的措辞所以感谢您的提示。我想这是这些错误之一,你只能做一次,记住它下一次(......?) 谢谢! – Richard 2012-03-20 16:01:52

+0

哦,我,我虽然我会花一整天时间来解决这个问题,再有就是你:d – 2014-02-28 03:46:27

3

这可能是您的一个DLL引用了您的控制台应用程序中未引用的.NET框架的某些部分。例如,如果您的某个类库项目中有asp.net服务器控件并且引用了System.Web,但是您的控制台应用程序未引用System.Web,则它不会生成,并且您将得到该错误。但它并不明显,因为引用的DLL存储在GAC中,因此它们将永远不会出现在您的bin文件夹中。

+0

我认为你是对的本,我已经添加了下面一个完整的答案 - 感谢您的帮助 – Richard 2012-03-20 15:58:13

+0

我不知道你为什么没有更多的upvotes – 2015-11-17 10:25:54

1

听起来很奇怪,

您是否尝试删除项目的引用并再次添加它?检查您的控制台应用程序是否具有所有正确的参考。

你也可以检查.csproj文件,看看里面的一切是否正确。

0

只是检查你“类库”项目有它的类或如果它是一个数据访问层项目,其中只包含一个.edmx模型检查找到模型设计器,它会生成罚款。

好运

相关问题