检查一个字符串是否可以转换为另一种类型(C#)

4

我在使用C#做一些测试,现在需要知道一些东西。我创建了一个类,像这样:

class DChanger
{
    //Just ignore this:
    private string section = Csuc.CPanel.CPanelSection.Appearance;
    //Then the constructor: DChanger dchange = new DChanger(Internet);
    public void DChanger(string subsection)
    {
        //Code
    }
}

现在,我想检查 "subsection" 是否可以转换为另一种类型。比如,我已经有一个enum:

enum Subsections { Internet, Programming };

我想检查“subsection”是否为“Internet”或“Programming”(在此示例中,因为真实枚举有更多的部分)。 我可以这样做吗?谢谢!


在文本和代码之间加入一个新行并进行缩进,以使其正确格式化 :) - Nick
抱歉,你保存了我的格式! - Addison Montgomery
1
你能使用 TryParse() 吗? - Scott Selby
你是特别在问枚举类型吗?其他类型呢? - Oded
1
你是在讨论将一个字符串与字符串枚举中的字符串进行比较吗? - Scott Selby
2个回答

10

1
如果可以的话,尽量不要使用异常来控制流程,这是最好的做法。 - George Duckett

1

为了快速测试,最好使用枚举类进行测试:

public void DChanger(string subsection)
    {
       bool b = Enum.GetNames(typeof(Subsections)).Contains(subsection);
    }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接