我有枚举
public enum ContentMIMEType
{
[StringValue("application/vnd.ms-excel")]
Xls,
[StringValue("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")]
Xlsx
}
在扩展中,我有两种获取属性值的方法:
public static string GetStringValue<TFrom>(this TFrom enumValue)
where TFrom : struct, IConvertible
{
...
}
和
public static string GetStringValue(this Enum @enum)
{
...
}
这些方法具有不同的签名,但是当我执行下一个操作时,ContentMIMEType.Xlsx.GetStringValue()
会采用第一种方法。
为什么会发生这种情况,因为对我来说第二种方法的执行更加明显(试图改变排序顺序,但没有帮助)。