我宣佈這樣的public enum
:解析枚舉不工作
public enum States
{
SomeState,
SomeOtherState
}
具有任意的字符串myString
其可以代表任何上述的「國家」,我想寫一個開關檢查它目前是哪一個。
這是我的嘗試。
States state = Enum.Parse(States, myString, true);
switch (state)
{
case States.SomeState:
case States.SomeOtherState:
break;
default:
break;
}
裏面Enum.Parse()
的它告訴我,論證國家被用作一個類型,而不是作爲一個變量。這不正確的用法嗎? Enum.Parse應該接收的第一個參數是Type enumType
:爲什麼然後它告訴我它需要一個變量?
多種回覆表示使用typeof
。不幸的是,我已經嘗試過,但因爲我收到以下錯誤,我猜想這是一個錯誤的想法。
Enum.Parse(typeof(States), myString, true);
產量:
不能隱式轉換類型 '對象' 到 '國家'。存在明確的轉換 。
感謝您的答覆。這也是我所做的......不幸的是,它不工作:請參閱最新的問題。 – Saturnix
你也必須投下結果。更新。當然是 –
!我真是一個白癡......非常感謝你的幫助! – Saturnix