从一个班级开始,我试图从另一个班级调用一个枚举。根据我在这个网站上找到的一些解决方案,我必须在界面中创建枚举,然后从类中创建一个属性。这对我很有用,但是当我尝试编译项目时,我收到错误消息:“enum_Name:'interfaces不能声明类型'。
以下是界面的代码:
public interface IEnums
{
public enum enum_SomeName
{
firstenumname = 1,
secondenumname = 2,
thirdenumname = 3,
forthenumname = 4,
fifthenumname = 5
}
这是属性类:
public class Whatever
{
public IEnums.SomeName wtf {get; set; }
}
正如我所提到的,我可以使用40种不同的方法在另一个类上调用枚举,但是我在线收到错误消息: public enum enum_SomeName。
答案 0 :(得分:4)
要么你误解了这个建议,要么是错误的。这是合法的,但很少将枚举声明放在类或结构声明中。这没有必要,你没有充分的理由不这样做。将枚举卡放在界面中是不合法的。把它放在外面。
答案 1 :(得分:3)
您正在尝试在界面中定义枚举。你不能这样做。
您可以让界面具有枚举的标量值。
public interface IEmployee
{
Enums.EmployeeStatusEnum EmpStatus {get;set;}
}
public enum EmployeeStatusEnum
{
Unknown = 0,
Hired= 1,
Fired= 2
}