【发布时间】:2015-03-06 14:36:26
【问题描述】:
我在 VS 2013 解决方案中的 3 个 C# 项目、一个 WPF 项目和两个类库。每个项目都有自己的命名空间。
在一个项目中,我有一个名为 MainWindowViewModel 的类,属于命名空间 ViewModels。
在另一个项目中,我有一个名为 BaseWindowViewModel 的类,属于命名空间 ToolBox.Base。
BaseWindowViewModel 有签名:
public abstract class BaseWindowViewModel : BaseViewModel, IBaseWindowViewModel
MainWindowViewModel 应该是此类的子类,如下所示:
public class MainWindowViewModel : BaseWindowViewModel
我为第二类设置了使用引用,例如,我可以在其他项目/命名空间 ToolBox.Base 中有 MainWindowViewModel 子类任何其他(旧)类或接口,但由于某种原因 VS 找不到 BaseWindowViewModel,它使用的编译器也找不到,所以我得到一个“类型或命名空间名称'BaseWindowViewModel' 找不到 (...)" 错误。
有趣的是,我无法访问我在 ToolBox.Base 项目中添加的任何其他新类,但我可以访问旧类...
我尝试过的:
- 清理并重建所有项目/整个解决方案
- 复制并粘贴名称以确保它们的拼写/大小写正确
- 创建了添加相同项目的新解决方案
- 创建了一个新的空类来尝试通过子类化来访问它
- 以上内容在两个项目中也使用了全新的课程
- 在我在这里找到的东西之后检查了所有项目的 Target Framework (.NET Framework 4.5)
- 仔细检查项目引用,即使考虑到我可以访问引用项目中的旧类,它们应该没问题
- 吃了糖果...(对我的灵魂很好,但没有解决任何问题)
没有任何效果,除了:
- 将 BaseWindowViewModel.cs 文件复制到 ViewModels 项目中,不更改任何内容,甚至不更改命名空间,保持文件完整
...但这对我的目的来说并不令人满意...
有什么想法吗?我很快就会秃顶......
【问题讨论】:
-
您是否添加了必要的项目引用?否则 usings 仍然会给你错误。
-
是的,Sebastiaan,这在我检查过的事情列表中 =(...今天我还尝试删除该项目引用并再次添加它,但运气不好...
标签: visual-studio-2013 compiler-errors