小编0by*_*tes的帖子

在c#接口和接口的方法签名之一中实现枚举

我有一个界面

接口:

interface IThing
{
  Enum MyEnum {get;set;}
  string DoAction(MyEnum enumOptionChosen, string valueToPassIn);
}
Run Code Online (Sandbox Code Playgroud)

具体实施:

public class Thing : IThing
{
  public enum MyEnum
  {
    FirstOption,
    SecondOption,
    ThirdOption
  }

  string doAction(MyEnum enumOptionChosen, string valueToPassIn)
  {
    switch(enumOptionChosen)
    {
      case MyEnum.FirstOption:
        x();
        break;
      case MyEnum.SecondOption:
        y();
        break;
      case MyEnum.ThirdOption:
        z();
        break;
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试编译它时,我得到'IThing.MyEnum'是一个'属性'但是像'类型'一样使用.我遗漏了一些能够要求在DoAction()签名中使用Enum的东西.

谢谢你的帮助.

c# enums interface

8
推荐指数
1
解决办法
3万
查看次数

标签 统计

c# ×1

enums ×1

interface ×1