Ich habe einen Aufzählungstyp wie dies als Beispiel:Parse String Aufzählungstyp
public Enum MyEnum {
enum1, enum2, enum3 };
Ich werde eine Reihe von Konfigurationsdatei lesen. Was ich brauche, um die Zeichenfolge zu MyEnum-Typ oder Null zu analysieren o nicht definiert. Nicht sicher, ob die folgenden Codes funktionieren (sorry für nicht jetzt Zugriff auf meinen VS hat):
// example: ParseEnum<MyEnum>("ENUM1", ref eVal);
bool ParseEnum<T>(string value1, ref eVal) where T : Enum
{
bool bRet = false;
var x = from x in Enum.GetNames(typeof(T)) where
string.Equals(value1, x, StringComparison. OrdinalIgnoreCase)
select x;
if (x.Count() == 1)
{
eVal = Enum.Parse(typeof(T), x.Item(0)) as T;
bRet = true;
}
return bRet;
}
nicht sicher, ob es richtig ist, oder gibt es andere einfache Möglichkeit, eine Zeichenfolge zu MyEnum Wert zu analysieren?
Check out Enum.TryParse, wie erwähnt in [diesem Beitrag] (http://www.codeducky.org/ins- outs-c-enums /). – ChaseMedallion