我有一个类在另一个项目中使用的问题。
Visual studio能够使用Resolve
(Ctrl+.
)添加using
语句,但是:
类型或命名空间名称' someeclass '找不到(您是否缺少using指令或程序集引用?)
再次解决此问题完全限定了类型,但类型路径中的名称空间被突出显示为未找到。
名称空间也出现在智能感知中,目标类在对象浏览器中可见。
删除未使用的命名空间将删除添加的using
语句。
我试过:
- 重建。
- 在解决方案选项中确认项目依赖关系
- 删除引用,重新添加。
- 确认类的可访问性(尽管没有找到命名空间)。
- 检查构建模式(调试/发布)。
- 重启Visual Studio.
- 清除两个项目中的
bin
文件夹。 - 重启机器。
诊断这个令人困惑的问题的下一步是什么?
这很可能是。net框架版本问题。被引用的类可能是使用更高版本的框架构建的。
尝试检查你的框架版本在属性,构建设置中都对齐。项目不能引用更高框架版本的程序集。
上次我遇到这个问题时,我的类没有标记为public。这只是一个想法。
这个问题是由类似的命名空间引起的,例如Company.Product.Project
和Product.Project
:
namespace Company.Product.Project
{
using Product.Project;
类在Product.Project
中,但编译器正在搜索Company.Product.Project
。
参见:Should 'using'语句在名称空间内部还是外部?