我正在为Json.NET编写一个JsonConverter,它允许我将任何枚举转换为由[Description]属性定义的字符串值.
例如:
public enum MyEnum {
[Description("Sunday")] Sunday,
[Description("Monday")] Monday,
[Description("Tuesday")] Tuesday,
[Description("Wednesday")] Wednesday,
[Description("Thursday")] Thursday,
[Description("Friday")] Friday,
[Description("Saturday")] Saturday
}
Run Code Online (Sandbox Code Playgroud)
我已经有了支持代码,myEnum.Description()显然会返回其字符串描述.
在JsonConverter实现中,有这样的方法:
public override bool CanConvert(Type objectType)
{
}
Run Code Online (Sandbox Code Playgroud)
我试图找出如何确定是否objectType是一个Enum并返回true,以便转换器知道它可以转换此对象.由于我有很多Enum,我无法明确检查每一个,所以我希望有一个更通用的方法来实现这一点.
Ry-*_*Ry- 219
使用该IsEnum属性:
if(objectType.IsEnum) {
return true;
}
Run Code Online (Sandbox Code Playgroud)