我有以下枚举

enum EditMode {
    View = 0,
    Edit = 1,
    Delete = 2
}

假设我有一个枚举类型的变量
var editMode = EditMode.Edit;

为什么以下代码不起作用(直接变为默认值)?
switch (editMode) {
    case EditMode.Delete:
        ...
        break;
    case EditMode.Edit:
        ...
        break;
    default:
        ...
        break;
    }

最佳答案

我也有这个问题。解决它的简单方法:在开关中的变量之前添加+符号,即

switch (+editMode) {
    case EditMode.Delete:
        ...
        break;
    case EditMode.Edit:
        ...
        break;
    default:
        ...
        break;
    }

09-28 08:17