我有一个具有通用返回类型的函数。如果 value 参数是有效的枚举值,则该方法返回相关的枚举值。
如何返回相关的枚举值?编译器错误:无法转换类型“int?” 到“T”
public static T? GetEnumValue<T>(int? value)
{
if (value == null)
{
return null;
}
try
{
var enumValues = Enum.GetValues(typeof(T));
foreach (object enumValue in enumValues)
{
if (Convert.ToInt32(enumValue).Equals(value))
{
// ERROR: Cannot convert type 'int?' to 'T'
return (T)value;
}
}
}
catch (ArgumentNullException)
{
}
catch (ArgumentException)
{
}
catch
{
}
return null;
}
谢谢,