【发布时间】:2018-09-14 20:47:01
【问题描述】:
我的一个类中有一个 IEnumerable 类型的方法:
protected virtual IEnumerable<T> GetSomething(CrudOptions crudOptions)
{
...
}
在解决方案的某处,我将 CrudOptions 定义为:
namespace myProject.Enums
{
public enum CrudOptions { Delete, Update, Read, Create }
}
当我尝试将我的类中的方法添加到已经存在的接口类时,它告诉我我不能这样做,因为找不到类型或命名空间CrudOptions。
这就是我要添加到接口类的内容:
IEnumerable<SomeTypeClass> GetSomething(CrudOptions crudOptions);
我遇到这个问题是因为我没有正确引用 CrudOptions 类型,还是在接口中我不允许使用定义的类型?
【问题讨论】:
-
你的界面有
using myProject.Enums声明吗? -
要隔离问题,请尝试使用完全限定的类型名称,例如
IEnumerable<SomeTypeClass> GetSomething(myProject.Enums.CrudOptions crudOptions); -
如果您怀疑,将枚举类型与接口一起使用是没有限制的。这是一个命名空间解析问题,就像其他任何问题一样。
-
是的,我添加了这个,但枚举仍然带有红色下划线,显示此错误:名称空间“myProject”中不存在类型或名称空间名称“枚举”。@adityap
-
这些是在两个独立的项目中吗?构建是否也失败了,还是只是用过时的缓存进行智能思考?