小编use*_*164的帖子

C# - 开关枚举 - 类型“ ”中不存在类型名称“ ”

在 switch case 中使用它时,出现错误“类型名称“Home”在类型“MenuEnum”中不存在”。如果我只是使用 if 语句,它就可以正常工作。

问题是当我使用 MenuEnum.Home 时,我收到 IDE 错误,并且我的代码无法编译。

我还在下面的代码示例中切换到常规 switch 语句。

在此输入图像描述

在此输入图像描述

在此输入图像描述

添加了下面的代码

public void Selected(MenuEventArgs<MenuItem> args)
{
    //The ULR to navigate to
    var url = string.Empty;

    try
    {
        //If there is no data do nothing
        if(string.IsNullOrEmpty(args.Item.Text))
            return;
            
        //switch on the incoming text
        switch (args.Item.Text)
        {
            //IDE Error on home (will not compile)...
            case MenuEnum.Home.ToString():
                url = "/";
                break;
            default:
                url = "";
                break;
        }

        //working code
        if (args.Item.Text == MenuEnum.Home.ToString().Replace('_', ' '))
        {
            url = "/";
        } …
Run Code Online (Sandbox Code Playgroud)

c# enums switch-statement

1
推荐指数
1
解决办法
3285
查看次数

标签 统计

c# ×1

enums ×1

switch-statement ×1