Enum.TryParse在c#中不支持vs2008

时间:2010-08-19 09:48:35

标签: c# enums tryparse

Enum.TryParse(,, out)在c#中不支持vs2008?为什么?我试图使用但得到TryParse没有定义的错误。

4 个答案:

答案 0 :(得分:6)

在.NET 4中引入了

Enum.TryParse。但是,您可能希望使用具有类似功能的Unconstrained Melody库以及许多其他功能。

答案 1 :(得分:2)

根据MSDN,在.NET 4之前未添加Enum.TryParse。VS2008的目标是.NET 3.5SP1,因此您无法访问此方法。

答案 2 :(得分:2)

 public static bool TryParse<T>(this Enum theEnum, string valueToParse, out T returnValue)
 {
    returnValue = default(T);
    int intEnumValue;
    if (Int32.TryParse(valueToParse, out intEnumValue))
    {
        if (Enum.IsDefined(typeof(T), intEnumValue))
        {
           returnValue = (T)(object)intEnumValue;
           return true;
        }
    }
    return false;
  }

答案 3 :(得分:1)

这个问题包括许多实施方法:How to TryParse for Enum value?