簡體   English   中英

枚舉:接口無法聲明類型

[英]Enum: interfaces cannot declare types

從一個類,我試圖從另一個類中調用一個枚舉。 根據我在此站點上找到的一些解決方案,我必須在接口內創建枚舉,然后從該類創建屬性。 這對我來說非常理想,但是當我嘗試編譯項目時,收到錯誤消息:“ enum_Name:'接口無法聲明類型'。

這是接口的代碼:

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。

您可能誤解了該建議,或者它是錯誤的。 這是合法的,但很少將枚舉聲明放在類或結構聲明中。 這是沒有必要的,沒有充分的理由也不應這樣做。 在接口中放置枚舉程序集是不合法的。 放在外面

您正在嘗試在接口內定義枚舉。 你不能那樣做。

您可以使接口具有枚舉的標量值。

public interface IEmployee
{

  Enums.EmployeeStatusEnum EmpStatus {get;set;}
}



public enum EmployeeStatusEnum 
{
    Unknown = 0,
    Hired= 1,
    Fired= 2
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM