如何诊断csproj引用的问题



我有一个类在另一个项目中使用的问题。

Visual studio能够使用Resolve (Ctrl+.)添加using语句,但是:

类型或命名空间名称' someeclass '找不到(您是否缺少using指令或程序集引用?)

再次解决此问题完全限定了类型,但类型路径中的名称空间被突出显示为未找到。

名称空间也出现在智能感知中,目标类在对象浏览器中可见。

删除未使用的命名空间将删除添加的using语句。

我试过:

  1. 重建。
  2. 在解决方案选项中确认项目依赖关系
  3. 删除引用,重新添加。
  4. 确认类的可访问性(尽管没有找到命名空间)。
  5. 检查构建模式(调试/发布)。
  6. 重启Visual Studio.
  7. 清除两个项目中的bin文件夹。
  8. 重启机器。

诊断这个令人困惑的问题的下一步是什么?

这很可能是。net框架版本问题。被引用的类可能是使用更高版本的框架构建的。

尝试检查你的框架版本在属性,构建设置中都对齐。项目不能引用更高框架版本的程序集。

上次我遇到这个问题时,我的类没有标记为public。这只是一个想法。

这个问题是由类似的命名空间引起的,例如Company.Product.ProjectProduct.Project:

namespace Company.Product.Project
{
        using Product.Project;

类在Product.Project中,但编译器正在搜索Company.Product.Project

参见:Should 'using'语句在名称空间内部还是外部?

最新更新